我们经常会碰到这样的问题,用 telnet/ssh 登录了远程的 Linux 服务器,运行了一些耗时较长的任务, 结果却由于网络的不稳定导致任务中途失败。如何让命令提交后不受本地关闭终端窗口/网络断开连接的干扰呢?下面举了一些例子, 您可以针对不同的场景选择不同的方式来处理这个问题。
nohup命令
功能:不挂断地运行命令,忽略HUP信号。
语法:nohup command &
nohup ping baidu.com > /dev/null &
setsid命令
功能:run a program in a new session在新的会话中运行程序
setsid ping baidu.com > /dev/null
将"&"也放入“()”内执行命令
将一个或多个命名包含在“()”中就能让这些命令在子 shell 中运行
(ping baidu.com > /dev/null &)
disown命令
screen命令
如何实现SSH断开后 进程仍然在后台运行
Linux 技巧:让进程在后台可靠运行的几种方法
版权属于:wshon
本文链接:https://blog.wshon.com/2018/05/ssh-background.html
转载时须注明出处及本声明
最新回复