linux.ssh脚本自动登录
来源:互联网 发布:通信网络代维 外包 编辑:程序博客网 时间:2024/05/29 08:37
在Linux环境中为了实现某些功能,需要手工输入相关的参数,进行人机交互,如远程登录等。Expect是一个免费的编程工具语言,能实现自动执行人机交互。
下面给出一个实现SSH自动远程登录的例子
代码:
#/usr/bin/expect
set hostname [lindex $argv 0] set passwd [lindex $argv 1] spawn ssh $hostname expect { "*password:*" { send "passwd\r" } "*es/no)?" {send "yes\r" exp_continue } } interact
1)#/usr/bin/expect
指定用来执行该脚本的命令程序
2)set hostname [lindex $argv 0]
获得脚本的执行参数保存在数组$argv中,从0号开始是参数,并将其保存到变量hostname中。
3) spawn ssh $hostname
spawn在expect中用于启动一个新线程,用来传递交互指令。本程序就是去执行ssh $hostname 命令;
4)expect 和 send
expect和send命令用来实现交互过程。expect 判断标准输出,从输出的信息中查询你想要匹配的字符串如“*password:*”,存在则执行后面的名利,否则忽略。exp_continue功能相当于C语言中的continue。send执行交互操作,与手工输入等效。
5)interact
执行完成后保持交互状态,把控制权交给控制台,留在远程登录的终端上,如果没有这一句登录完成后会退出。
0 0
- linux.ssh脚本自动登录
- 脚本ssh自动登录linux服务器
- ssh 自动登录脚本
- ssh自动登录脚本
- SSH自动登录脚本
- SSH自动登录脚本
- ssh 自动登录脚本
- SSH自动登录脚本
- ssh自动登录主机脚本
- Linux下expect的ssh自动登录脚本
- linux ssh 自动登录
- linux ssh自动登录
- SSH自动登录Linux
- [linux] 自动ssh登录
- Linux ssh密钥自动登录
- linux ssh自动登录服务器
- Linux expect自动登录ssh
- expect ssh自动登录脚本和kibitz
- 第十六周项目三 用文件保存学生的名单
- Solid Compression
- android studio导入第三方工具
- Android自定义多TAB悬浮控件实现蘑菇街首页效果
- service的用法
- linux.ssh脚本自动登录
- android版本检测提示更新
- 聊聊innerHTML
- 第一条博客--关于编程
- 线程池(极客学院)
- Android网络编程(一)
- Qt设置标题栏图标、文字和标题栏样式的方法
- dict(字典)和set
- 关于mysql的简单的备份跟恢复