[标签]: 自动登陆 自动输入 expect自动输入 interact用法
问题详情的描述或方案目标的预期:
有些场景下,我们希望可以用脚本实现自动输入,不需要手动去输,比如登陆的时候自动输入密码,本篇分享一个实现的小脚本。
【解决方案】
整体思路:使用expect自动输入,捕捉返回填充密码
[前置准备]:需要安装expect: # yum -y install expect
[脚本内容]:
#!/bin/expect
set timeout 30
set host "localhost"
set username "taich"
set password "Taich@ABCd"
spawn ssh $username@$host -p 30006
expect "*password*" {send "$password\r"}
interact
*************************************************************************
# 上面第一行注明解释器为 /bin/expect
# 设置一下30s超时
# spawn启动expect进程
# expect指令匹配返回的关键字password,自动填充密码;如果返回的是中文“密码”,就写中文“密码”: expect "*密码*" {send "$password\r"}
# interact 维持停留在交互状态
总结:实用的好东西要懂得收藏分享。