永发信息网

用expect实现telnet登陆到linux系统后,再执行一个shell脚本,待这个shell脚

答案:3  悬赏:70  手机版
解决时间 2021-04-06 03:14
  • 提问者网友:無理詩人
  • 2021-04-05 21:12
用expect实现telnet登陆到linux系统后,再执行一个shell脚本,待这个shell脚本输出”成功”后,退出系统。
最佳答案
  • 五星知识达人网友:忘川信使
  • 2021-04-05 21:54
#!/usr/bin/expect
set ipAddr "172.28.0.11"
set userName "root"
set passwd "mypasswd"
set myScript "/home/script.sh"
set timeout 10
spawn telnet $ipAddr
expect {
    "login:" {
          send "$userName\n"
          expect "assword:"
          send "$passwd\n"
     }
     "*$" {
          send "$myScript\n"
          expect "成功"
          send "exit\n"
     }
}暂时没有环境,所以未加验证,试试吧。
全部回答
  • 1楼网友:低音帝王
  • 2021-04-05 23:29
expect可以实现你所说的上述功能.
  • 2楼网友:枭雄戏美人
  • 2021-04-05 22:49
你好! shell输出成功,这个没法判断的,你可以绕一个弯。先把shell输出到一个文件里面,再写一个判断语句,如果有你输出的内容就是输出成功,您看如何? 仅代表个人观点,不喜勿喷,谢谢。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯