1 #!/usr/bin/expect 2 set timeout 100 3 set passwd "your password" 4 spawn shell 5 expect "key" 6 send "$passwd\n" 7 interact
- 第一行主要用于指明expect执行路径,由于登录类的脚本本质上是由expect解释执行,所以第一行需要指明expect的路径
- 第二行用于设置超时时间,设置值为-1代表不超时
- 第三行用于设置登录密码,即填写你要执行的shell语句的密码
- 第四行用spawn来执行你要执行的shell命令
- 第五行使用expect来匹配执行shell命令的返回值中的关键字key,即需要知道执行shell之后等待输入密码的那行语句,超时时间即第二行设置的时间
- 第六行使用send将第三行设置的密码自动填充到terminal,实现登录功能
- 第七行使用interact退出expect环境,返回terminal界面,实现登录成功之后再输入,如不使用interact则会停留在expect环境中,并且无法输入