`
lihui8848
  • 浏览: 9608 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

Linux 下远程登录,改的例子

阅读更多
#!/usr/bin/expect     

# 2011.11.23  hui . my first example of expect

if {[llength $argv ] < 1 } {
  puts " please in put the ip"
  exit 1
}

set timeout 30

spawn ssh -l root $argv
expect "password:"
send "ispass\r"
interact



------转载------

1. [#!/usr/bin/expect]
  这一行告诉操作系统脚本里的代码使用那一个shell来执行。这里的expect其实和linux下的bash、windows下的cmd是一类东西。
  注意:这一行需要在脚本的第一行。
  2. [set timeout 30]
  基本上认识英文的都知道这是设置超时时间的,现在你只要记住他的计时单位是:秒
  3. [spawn ssh -l $username $IP]
   spawn是进入expect环境后才可以执行的expect内部命令,如果没有装expect或者直接在默认的SHELL下执行是找不到spawn命 令的。所以不要用 “which spawn“之类的命令去找spawn命令。好比windows里的dir就是一个内部命令,这个命令由shell自带,你无法找到一个dir.com 或 dir.exe 的可执行文件。
  它主要的功能是给ssh运行进程加个壳,用来传递交互指令。
  4. [expect "password:"]
   这里的expect也是expect的一个内部命令,有点晕吧,expect的shell命令和内部命令是一样的,但不是一个功能,习惯就好了。这个命 令的意思是判断上次输出结果里是否包含“password:”的字符串,如果有则立即返回,否则就等待一段时间后返回,这里等待时长就是前面设置的30秒
  5. [send "ispass\r"]
  这里就是执行交互动作,与手工输入密码的动作等效。
  温馨提示: 命令字符串结尾别忘记加上“\r”,如果出现异常等待的状态可以核查一下。
  6. [interact]
  执行完成后保持交互状态,把控制权交给控制台,这个时候就可以手工操作了。如果没有这一句登录完成后会退出,而不是留在远程终端上。


分享到:
评论

相关推荐

    linux免安装远程工具

    Linux免安装远程工具,如标题所示,主要指的是可以在Linux系统中无需进行安装即可使用的远程连接软件。这样的工具方便用户在不同计算机间快速切换,而无需担心依赖性问题或占用过多磁盘空间。MobaXterm便是一个典型...

    java应用程序远程登录linux并执行其命令

    本文通过一个具体的例子,详细介绍了如何利用Ganymed SSH2库实现在Java应用程序中远程登录Linux服务器并执行命令的功能。通过这种方式,可以极大地提高自动化运维的能力,减少手动操作的复杂性和错误率。希望本文能...

    登录linux服务器ssh软件

    在Windows环境下,有许多这样的客户端工具可供选择,其中一个例子就是压缩包中的“SSHSecureShellClient-3.2.9.exe”,这是一个名为SSH Secure Shell Client的软件。 SSH Secure Shell Client是一款流行的SSH客户端...

    一个非常好的远程控制的例子

    在标题和描述中提到的"一个非常好的远程控制的例子",我们可以理解为这是一个关于高效、安全的远程控制软件或者方法的示例。 在远程控制中,通常涉及以下几个关键技术点: 1. **远程桌面协议(Remote Desktop ...

    远程访问linux桌面

    通过VNC远程访问Linux桌面不仅能够提高工作效率,还能满足不同场景下的需求。无论是技术支持人员还是普通用户,在需要远程访问Linux系统时,都可以考虑使用VNC。希望本文提供的指南能帮助大家顺利实现Linux桌面的...

    [重新上传]一个远程控制修改远程IP的例子(含代码)

    标题中的“一个远程控制修改远程IP的例子(含代码)”表明这是一个关于远程控制技术的示例,其中包含用于改变远程设备IP地址的源代码。在IT领域,远程控制技术允许用户通过网络对另一台计算机进行操作,这通常涉及到...

    实战搭建Linux远程日志服务器.pdf

    "实战搭建Linux远程日志服务器" 本文将详细介绍如何搭建Linux远程日志服务器,保护系统安全,防止非法入侵。日志服务器将系统上发生的重要事件记录下来,以协助系统管理员进行安全分析、故障排查及合规审计等。 ...

    vs2015跨平台linux开发so库例子

    标题中的“vs2015跨平台Linux开发so库例子”指的是使用Visual Studio 2015进行跨平台开发,创建适用于Linux系统的动态链接库(.so文件)。Visual Studio 2015引入了对Linux开发的支持,允许开发者在Windows环境下...

    buildroot开发板搭建ssh远程登录服务

    标题中的“buildroot开发板搭建ssh远程登录服务”是指在基于Buildroot构建的嵌入式Linux系统中,通过OpenSSH服务器实现远程登录控制台的功能。嵌入式环境下的SSH允许开发者在没有物理访问设备的情况下,通过网络进行...

    Linux下Socket编程入门例子

    这个简单的例子展示了如何在Linux下使用Socket进行TCP连接的创建和监听,是学习Socket编程的起点。在实际应用中,还需要处理错误,添加网络数据的发送和接收等功能。理解这些基本概念和函数的使用,对于深入学习网络...

    远程登录.pdf

    本知识点将详细解析远程登录的概念、实现方法、配置以及安全性等方面的内容,重点聚焦于Windows操作系统和Linux系统下的远程登录配置,特别是涉及到的Windows Terminal Services、VNC(Virtual Network Computing)...

    linux 问题22例子.txt

    为什么不能远程登录 Linux? - **解答:** - 如果无法通过 telnet 登录 Linux,可能是由于 `/etc/nologin` 文件的存在。 - 此文件会在系统维护期间阻止用户登录。 - 移除此文件或临时删除,可以恢复正常登录。 ...

    putty端口转发例子(需远程服务器)

    除了putty外,还需要一台Linux远程服务器用于putty配置中内网映射到外网

    linux建立ssh信任关系

    在Linux系统中,SSH(Secure Shell)是一种网络协议,用于安全地远程登录到另一台机器。建立SSH信任关系是免密登录的关键,它允许用户在两台主机之间进行无密码的SSH连接,增强了安全性,避免了每次登录时输入密码的...

    MQ入门实例(本地队列&远程队列 两个例子)

    在Linux环境下,需要先切换到`/opt/mqm/samp/bin`目录下,然后执行: ```shell ./amqsput Q1 ``` 而在Windows环境下,直接运行: ```shell amqsput Q1 ``` 按照提示输入消息内容,并按Enter键确认。此时,可以...

    Linux nfs Linux nfs Linux nfs

    本部分详细介绍了如何在Linux环境下配置NFS服务,并通过具体的实例展示了如何访问这些服务。 1. **NFS服务的确认与启动** - 首先需要确认Linux系统是否支持NFS服务。可以通过检查`/etc/rc.d/init.d`目录下是否存在...

    Linux系统 ssh登录不需要密码

    在Linux系统中,SSH(Secure Shell)是一种加密网络协议,用于在不安全的网络上提供安全的远程登录和其他服务。SSH登录无需密码的功能是通过公钥认证机制实现的,这在管理多台服务器或者自动化运维时非常方便。下面...

    mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz在Linux下安装步骤

    在这个例子中,使用的是`mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz`,你可以通过提供的百度网盘链接下载。确保下载的版本与你的Linux系统兼容。 2. **检查环境**:运行`rpm -qa | grep mysql`和`cat /etc/group ...

    Linux操作系统下配置无密码的RSH访问

    例如,在上面的例子中,计算机名为 CloneLinux,IP 地址为 192.168.1.194,主节点名为 ServerLinux,IP 地址为 192.168.1.193。 要配置 dsadm 用户的 RSH 无密码登陆,需要在 CloneLinux 机器的 dsadm 用户的主目录...

    在Linux远程服务器上设置PyTorch的GPU版本

    在Linux远程服务器上设置PyTorch的GPU版本是一项常见的任务,特别是在进行深度学习项目时,GPU的加速能力是必不可少的。PyTorch是一个强大的开源机器学习库,支持Tensor计算和动态神经网络,广泛应用于科研和工业界...

Global site tag (gtag.js) - Google Analytics