用sshpass执行远程主机脚本,比如:
sshpass -p "proc" ssh proc@10.70.xxx.xxx -o StrictHostKeyChecking=no './1.sh'
如果脚本1.sh中,会后台启动一个进程,比如 tail -f 1.sh &
这个sshpass的命令就一直不会中断,看日志是脚本都执行完了的
目标主机上杀掉这个tail,sshpass才会返回,求解啊
翻过sshpass的源码,调试了下,执行到execvp( new_argv[0], new_argv );就不往下走了,一直等待调用的ssh返回
------解决方案--------------------------------------------------------
恩,那就是sshpass的父进程在wait子进程退出呢.
看看有没有选项可以不让父进程等呢.
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
expect
给个回复结束掉