返回信息流最近写一个expect脚本,需要在一个大for循环里面循环进行spawn ssh操作,但是第一次没问题,在第二次进循环的时候,会报错,connection refused和spawn id exp10 not open....
这是一条镜像帖。来源:北邮人论坛 / cpp / #98502同步于 2018/11/21
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
expect有小哥哥熟悉吗,嘤嘤嘤?
yyn2019
2018/11/21镜像同步5 回复
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
这个感觉应该发到Linux版吧...然后就会被吐槽:Talk is cheap. Show me the code...[ema21]
从你的描述上看不会把spawn ssh这句也写在for里边了吧...不能保持连接等expect完一次close嘛...
如果要是连多个ssh端口...看看普通的ssh能不能连上第二次循环的地址...
【 在 yyn2019 的大作中提到: 】
: 最近写一个expect脚本,需要在一个大for循环里面循环进行spawn ssh操作,但是第一次没问题,在第二次进循环的时候,会报错,connection refused和spawn id exp10 not open....
谢谢小哥哥!我确实是在for里面写的spawn ssh 而且是ssh的同一个地址....可能是上一次的spawn还没有关占用了下一次的端口吗。。
这个时候我用send "exit/r"退出?还是应该在expect脚本里调用shell关闭占用该端口的进程。。
昨天刚接触的expect....感觉自己小白的发光。。
【 在 tonyjansan (FOR THOSE WHO DO.) 的大作中提到: 】
: 这个感觉应该发到Linux版吧...然后就会被吐槽:Talk is cheap. Show me the code...[ema21]
: 从你的描述上看不会把spawn ssh这句也写在for里边了吧...不能保持连接等expect完一次close嘛...
: ...................
同一个端口最好还是保持连接反复读写直到任务完成再退出吧...
如果一定要向你那么搞就先试试你说的say goodbye方式吧,最好等连接退出后再启新的ssh进程:
send "exit\r"
expect eof
【 在 yyn2019 的大作中提到: 】
: 谢谢小哥哥!我确实是在for里面写的spawn ssh 而且是ssh的同一个地址....可能是上一次的spawn还没有关占用了下一次的端口吗。。
: 这个时候我用send "exit/r"退出?还是应该在expect脚本里调用shell关闭占用该端口的进程。。
: 昨天刚接触的expect....感觉自己小白的发光。。