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

 

posted on 2017-03-09 10:24  Daniel_z  阅读(277)  评论(0编辑  收藏  举报