红联Linux门户
Linux帮助

Linux使用expect脚本实现远程机器自动登录

发布时间:2016-01-01 15:11:22来源:linux网站作者:kongxx

首先创建一个expect脚本ssh_expect,文件内容如下:

#!/usr/bin/expect -f
set hostname [lindex $argv 0]
set user [lindex $argv 1]
set passwd [lindex $argv 2]
set timeout 30
set force_conservative 1
if {$force_conservative} {
set send_slow {128 .1}
}
spawn ssh $user@$hostname;
expect {
"*continue connecting (yes/no)?" { send -s "yes\r"; exp_continue }
"*assword:" {
send -s "$passwd\r";
}
}
interact


然后定义一些命令别名,比如:

alias   h101='ssh_expect 192.168.0.101 <user> <password>'
alias   h102='ssh_expect 192.168.0.102 <user> <password>'


这些别名可以写到~/.bashrc文件中

然后执行 h101 就可以自动登录192.168.0.101机器了。


Linux下通过crontab及expect实现自动化处理:http://www.linuxdiyf.com/linux/15636.html

用Expect来做Linux程序测试:http://www.linuxdiyf.com/linux/7673.html

Linux下的expect的简单用法及举例:http://www.linuxdiyf.com/linux/2655.html

Linux下Expect命令应用:http://www.linuxdiyf.com/linux/1709.html