Io-Redirection
程序啟動後的重定向
假設我從終端呼叫了 Firefox
firefox
,然後我回到了終端。我現在可以使用 ctrl-z 暫停該程序,並在後台使用bg
. 但是,它將繼續在終端中產生輸出。有沒有辦法在這一點上重定向?也就是說,要得到寫完的結果firefox &>/dev/null &
?
您可以使用
gdb
. 您需要找到 firefox 的程序 ID (PID),如果您使用Ctrl
+暫停了程序,它可能包含在暫停消息中Z
。如果該消息不包含終端中的 PID,您可以使用以下內容找到它:
ps aux | grep firefox
有了它,你可以使用這個命令來啟動
gdb
:sudo gdb -p PID
在程序中,這些命令會將 stdout 和 stderr 重定向到
/dev/null
.p dup2(open("/dev/null",0),1) p dup2(open("/dev/null",0),2) detach quit