Linux下利用expect,不用交互模式,直接登陆远程主机

Linux环境下只有在机器20.200.254.18上ssh dataconv@20.200.31.23才能连接到23的机器,而且还需要输入密码(每次都需要输入地址,密码很烦),所以利用expect写了个脚本。

脚本如下:

#!/usr/bin/expect
spawn ssh dataconv@20.200.31.23
expect "*password:"
send "HF*dv303
"
interact

其中第一行 /usr/bin/expect是表示expect的位置

spawn是expect的内部命令,而不是linux的命令,dataconv是目标主机的用户名,20.200.31.23是目标的主机的ip

expect "*password:" 改行是匹配交互模式下弹出的让我们输入命令的行

send "HF*dv303" 其中HF*dv303是目标主机的dataconv用户的密码,注意不要丢了

interact 交互模式,用户会停留在远程服务器上面

原文地址:https://www.cnblogs.com/chenanan/p/7511388.html