+
95
-

回答

命令前加个nohup,命令后加一个&

nohup sh test.sh &

解释一下:

1、只使用 nohup ,即 nohup command [arg...] ,

无法标准输入(即控制台无法输入),标准输出 和 错误信息保存到 nohup.out文件里面,关闭客户端后,命令仍然会运行。

例如:

执行 nohup sh test.sh 脚本命令后,终端不能接收任何输入,标准输出 和 标准错误 会输入到当前目录的nohup.out 文件。即使关闭xshell 退出后,当前session依然继续运行。

2、只使用 &,即 command [arg...] [&] ,

可以标准输入(控制台可以输入内容,可以交互),但无法将 标准输出 和 错误信息 输入到文件中。关闭客户端后,命令会就马上停止。

例如:

执行 sh test.sh & 脚本命令后 ,关闭 xshell,对应的任务也立刻停止。
nohup 和 & 一块使用 ,即 nohup command [arg...] &,

3、可以标准输入(即控制台能输入文本进行交互),也能将 标准输出 和 错误信息 输出信息保存到 nohup.out 中,关闭客户端后命令仍然会运行。

例子1:

执行 nohup sh test.sh & 命令后,既能标准输入,就是终端能够接收任何输入,也能将 标准输出 和 错误信息 的日志输入到 nohup.out 文件,即使关闭xshell,退出当前session依然继续运行。

网友回复

我知道答案,我要回答