Files
重定向/grep 現有 shell 的 STDOUT
我執行了很多長時間執行的程序(模擬),將進度列印到
STDOUT
. 我偶爾會忘記重定向到STDOUT
我可以重定向到的文件grep
,而且通常重啟太遠了。**問題:**在不停止該過程的情況下,有沒有辦法可以連接到另一個
STDOUT
?這些總是在 OS X 10.7.3 上使用 ZSH 在 GNU 螢幕中執行。
這裡提到了一個巧妙的hack,它使用 GDB 附加到程序,一個名為的實用程序包裝了這個功能。
dupx
從
dupx
手冊頁:Dupx 是一個簡單的實用程序,用於重新映射已執行程序的文件。像 Bash 這樣的 shell 允許在程序啟動時使用
>, < -
類似的語法輕鬆進行輸入/輸出/錯誤重定向,例如:echo 'redirect this text' > /tmp/stdout
將輸出重定向echo
到/tmp/stdout
.然而,標準 shell 不提供為已啟動的程序重新映射(重定向)輸出(或輸入或錯誤)的能力。Dupx 試圖通過使用
dup(2)
內部系統呼叫來解決這個問題gdb(1)
。Dupx 目前被實現為gdb
腳本周圍的簡單外殼包裝器。