linux 使用expect 实现自动登录

直接上实例:

#!/usr/bin/expect -f

set loginpass "fd2586d21586"

set cmd_prompt "]#|~]?"
set timeout 300
spawn ssh huangwei@173.28.2.10
 expect {
  -re "connecting \(yes/no\)?" {
       send "yes\r"
      } 
      -re "assword:" {
       send "$loginpass\r"
      } -re "Permission denied, please try again." {
       exit
       } -re "Connection refused" {
         exit
       } timeout {
         exit
       } eof {
         exit
       }
    }

 expect "*Select page:*" {

 send "173.26.35.11\r"
}
interact

脚本执行效果:

关键语法说明:

1,脚本中loginpass 表示登录密码.

2,send命令就是模拟手动输入;

注意:

1,命令后面必须跟上\r, 表示手动按下回车.

2,脚本最后一定要有

interact

 

expect 不仅能够用于登录,而且在登录之后,也可以发送命令,

比如登录之后, 需要切换目录,或者执行命令

例如:

send "cd /home/house/house_endpoint/code/oa_framework\r"
 send "git pull\r"
 send "mvn clean install\r"

 send "cd /home/house/house_endpoint/code/house_server\r"
 send "git pull\r"
 send "mvn clean install\r"

 send "sh /home/house/house_endpoint/script/deploy.sh deploy\r";

 

 

 

转载于:https://my.oschina.net/huangweiindex/blog/1574563

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值