shell 远程登录
使用shell模拟ssh远程登录,执行各种命令:
- 安装expect插件
yum install expect –y vim ssh.exp
- 编写expect登录脚本
#!/usr/bin/expect -f set ip 172.22.168.11 set password 1qaz@WSX set timeout 10 spawn ssh admin@$ip expect { "*yes/no" { send "yes\r"; exp_continue} "*password:" { send "$password\r" } } expect "$*" send "pwd\r" #send "nohup /home/admin/death.sh &" send "exit\r" expect eof
- 执行脚本
chmod +x ssh.exp ./ssh.exp
可以按照以上的方法执行各种远程命令了
如果想留在远程客户端:
那么加上 interact 就行了
#!/usr/bin/expect -f set ip 172.22.168.11 set password 1qaz@WSX set timeout 10 spawn ssh admin@$ip expect { "*yes/no" { send "yes\r"; exp_continue} "*password:" { send "$password\r" } } interact #交互模式,用户会停留在远程服务器上面