下面是假設的場景: 我在附加到框A的一些硬件上運行測試腳本,我有root權限。這個測試腳本需要最少的用戶輸入(每半小時左右翻一次開關)。在測試過程中大約一個半小時,我意識到這個腳本需要很長很長時間才能完成,達到八個小時的時間。方框A位於一個非常寒冷,響亮的服務器房間,一般來說這對身體不好。 Box B位於我的辦公室,那裏有一張舒適的椅子和無盡的熱水袋。我想要一些方法來監視在框B中從ssh會話運行在框A上的進程的輸出,所以我知道何時去翻轉交換機,但我不想重新啓動測試過程。如果我知道開始測試需要很長時間才能完成,那麼我只需將其輸出傳送到日誌文件並從我的Box B ssh會話中刪除該文件。如果我知道在框A上運行的進程的PID,是否可以從另一個會話觀察該進程的stdout?觀察另一個進程的標準輸出
當然,我可以在框A上運行vnc並從框B登錄以查看輸出,但是這打破了這個假設的目的,即瞭解更多關於流程管道,標準輸出,並且在Linux環境中一般工作。
想法?
這正是我希望找到的!謝謝,我甚至沒有考慮過使用gdb來劫持進程的文件描述符。 – 2010-08-06 14:08:32