项目是多个服务一起工作的,但服务分别部署在不同的机器上,如果每次都手动ssh到各个机器上去一挨个启动的话多了要疯掉,所以用以脚本自动登入到各个服务器执行相关启动脚本,同样也是用到expect ,要应用到项目中的话只有需把ssh中的host换成你的host ,把./bin/main换成你想执行的命令就OK了
#!/usr/bin/expect -f
spawn ssh [color=red]hos[/color]t '[color=red]./bin/mail'[/color]
expect "(yes/no)?" {
send "yes\r"
expect "password:"
send "123456\r"
} "password:" {send "123456\r"} "*host " {exit 1}
expect eof