在Linux的bash中,我知道如何启动一个长时间运行的进程并将其发送到后台。
例如run.sh,然后按Control+Z,然后键入bg 1
有时我想继续做其他工作,但这个后台进程不断打印到我的Putty控制台 - 这很烦人。
我知道我可以开始将run.sh &> /tmp/run.sh.log所有输出泵入/tmp/run.sh.log,但有时我只是忘记这样做。
如何阻止后台进程打印到我的控制台?
如果您已经启动该过程并希望停止打印到stdout,同时仍保持其运行,您可以使用:
stty tostop
Run Code Online (Sandbox Code Playgroud)
当您给出stty参数时tostop,它会停止尝试写入的后台进程stdout
要使进程能够再次写入,您可以使用fg.