终止由bash脚本执行的SSH会话

前端之家收集整理的这篇文章主要介绍了终止由bash脚本执行的SSH会话前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个我可以在本地运行的脚本来远程启动服务器:
#!/bin/bash
ssh user@host.com <<EOF
  nohup /path/to/run.sh &
EOF
echo 'done'

运行nohup后,它挂起来.我必须按ctrl-c退出脚本.

我尝试在这个文档的末尾添加一个显式的退出,并为ssh使用“-t”参数.无论如何.如何使此脚本立即退出

编辑:客户端是OSX 10.6,服务器是Ubuntu.

我认为问题是,nohup不能重定向输出,当你从ssh进来,它只重定向到nohup.out当它认为它连接到一个终端,而我stdin覆盖你将会阻止,即使在-t .

解决方法可能是自己重定向输出,然后ssh客户端可以断开连接 – 它不等待流关闭.就像是:

nohup /path/to/run.sh > run.log &

(这对我来说是一个简单的测试,从OS X客户端连接到ubuntu服务器.)

原文链接:https://www.f2er.com/bash/386781.html

猜你在找的Bash相关文章