无法获得linux' exec'命令正常工作

时间:2018-04-04 12:08:17

标签: linux exec

我想使用exec命令在当前终端会话的后台运行python脚本。其他帖子表明

exec python myscript.py &

应该在后台运行脚本。但是程序的输出仍然在我的命令行上。我误解了exec命令吗?我只是想忽略脚本的输出,或者如果不可能,则将其发送到文件。

我无法使用nohup,因为我需要将SIGHUP信号发送到我的脚本。除了nohup,请随意提出其他解决方案。

2 个答案:

答案 0 :(得分:2)

在后台运行只意味着您可以与当前shell进行交互,但后台进程的stdout(和stderr)仍然连接到终端。如果您不想要它,请将其重定向到其他地方:

exec python myscript.py &>/dev/null &

另外,为什么需要exec

答案 1 :(得分:1)

如果要在后台运行命令,可以使用nohup exec python myscript.py &文件的输出存储在nohup.out文件中