Bash: 将进程静音

Bash: Silence a process put into background

如果我 运行 一个使用 bash 的应用程序,我通过

将其放入后台

如果现在进程正在打印到 stdout,则 shell 会打印此输出。这个输出对我来说不感兴趣,我不喜欢我的 shell 被它污染。

有没有办法将这个过程的输出重定向到 /dev/null

我可以通过使用 (./application &> /dev/null)& 在后台直接启动应用程序来实现同样的效果,但我的应用程序已经 运行ning,我不想退出并重新启动它。

一个选项是:

  1. 将作业置于前台(参见 Job control)。
  2. 重定向输出(见下文)。
  3. 再次发送到后台。

How to redirect output of an already running process

https://superuser.com/questions/473240/redirect-stdout-while-a-process-is-running-what-is-that-process-sending-to-d

Redirect STDERR / STDOUT of a process AFTER it's been started, using command line?

https://etbe.coker.com.au/2008/02/27/redirecting-output-from-a-running-process/