我有一個問題screen
。基本上我希望它在每個螢幕上產生一個日誌,例如螢幕 #1 將是screenlog.1
,螢幕 #2 將是screenlog.2
- 你會得到備忘錄。
無論如何,當我使用以下命令啟動螢幕時會發生什麼:
screen -SL screen1
(該-L
參數是因為我需要強制它產生日誌)它只記錄第一個螢幕,而不記錄其餘的2-5個螢幕。我嘗試過使用.screenrc
帶有logfile
參數的文件,它有效 - 但只是更改了 的名稱screenlog.0
,這並不是我真正想要的。
知道我該怎麼做嗎?
附加資訊:CentOS 6.3(64 位元)。螢幕版本 4.00.03 (FAU) 2006 年 10 月 23 日。
答案1
以下是如何將多個螢幕會話的輸出記錄在單獨的日誌檔案中:
- 使用以下命令啟動螢幕會話
screen -S <preferred-name-of-session>
- 使用 & 連接螢幕,然後使用以下命令設定螢幕的日誌檔案:
Ctrl + a :logfile <name-of-log-file>
- 透過執行啟動螢幕日誌記錄
Ctrl + a H
- 執行所需的程式然後分離螢幕
每次這看起來都像是一項繁重的工作,但一旦你開始使用它,它就會變得非常方便!
答案2
您可能會遇到日誌輸出緩衝的情況。
我在本地測試了帶有和不帶有螢幕名稱的情況,並收到了預期的 screenlog.0 和 .1 和 .2 等。在寫入磁碟之前有一個緩衝區
參考沖洗秒數: http://www.gnu.org/software/screen/manual/screen.html#Logging