免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1304 | 回复: 5
打印 上一主题 下一主题

expect的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-01-14 15:01 |只看该作者 |倒序浏览
  1. #!/usr/bin/expect --


  2. set username "ports"
  3. set password "ports"


  4. spawn ssh -1 -l $username 10.254.162.250


  5. expect "password:"
  6. send "$password\n"
  7. expect "#"
  8. send "show run\n"
  9. interact
复制代码



目前我的问题是,在ssh进程被spawn后,如果遇到第一次登录目标机器时会返回一个询问,询问是否存储,然后输入yes,这个过程在程序中如何实现自动判断并send “yes”呢?

论坛徽章:
0
2 [报告]
发表于 2005-01-14 19:09 |只看该作者

expect的问题

原帖由 "tianci3982730" 发表:
yes y|spawn ssh -1 -l $username 10.254.162.250
不知道行不
没测试

  1. invalid command name "yes"
  2.     while executing
  3. "yes y|spawn ssh -1 -l $username 10.254.162.250"
  4.     (file "./testRouter.expect" line 7)
复制代码

论坛徽章:
0
3 [报告]
发表于 2005-01-15 13:26 |只看该作者

expect的问题

原帖由 "ge_johnny" 发表:


目前我的问题是,在ssh进程被spawn后,如果遇到第一次登录目标机器时会返回一个询问,询问是否存储,然后输入yes,这个过程在程序中如何实现自动判断并send “yes”呢?


加一个expect  "*yes/no*"
    send "yes/r" eof_contiune


类似这样的。。这个你直接copy一定通不过。呵呵。。

论坛徽章:
0
4 [报告]
发表于 2005-01-15 13:38 |只看该作者

expect的问题

expect {
         \"*yes/no*\" {send \"yes\r\"; exp_continue}
         \"*password*\" {send \"$passwd\r\";}
         }
  expect eof;

查了一下以前的脚本。看看有没有帮助

论坛徽章:
0
5 [报告]
发表于 2005-01-17 10:50 |只看该作者

expect的问题

原帖由 "wj98127" 发表:
expect {
         \"*yes/no*\" {send \"yes\r\"; exp_continue}
         \"*password*\" {send \"$passwd\r\";}
         }
  expect eof;

查了一下以前的脚本。看看有没有帮助


Thanks you guy's help. I'll take a try later.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP