Shell
保存完整的 GNU 螢幕會話狀態
是否可以保留 GNU 螢幕視窗(或只是標準外殼)的“狀態”,以便我可以在重新啟動後重新載入所有內容:
- 打開的砲彈數
- 每個外殼的名稱
- 每個shell的目前目錄
- 每個貝殼的歷史
- 如果可能,它們的環境變數
保存完整的螢幕會話實際上是不可能的。
您可以做的是創建一個屬性
.screenrc
,它將在您重新啟動系統後設置一些東西。以下是對您列出的內容的一些評論:
- 打開的砲彈數
- 每個外殼的名稱
- 每個shell的目前目錄
我
.screenrc
在啟動時使用這樣的東西來打開一些特定的 shell:## set the default shell shell zsh # screens screen -t 'zsh' screen -t 'mutt' mutt screen -t 'zsh' /home/user/bin/scriptToRun [..]
您將獲得 ’’ 之間的字元串作為您的視窗名稱,名稱後面的命令將在您的預設 shell 上執行。包括您想要的任何腳本,例如更改特定目錄並打開一些日誌。
- 每個貝殼的歷史
你有沒有想過在你的會話中分享 shell 的歷史?恕我直言,這使事情變得更加容易。在 ZSH
setopt SHARE_HISTORY
中完成.zshrc
- 如果可能,它們的環境變數
如果你真的需要這個並且不想做任何權衡,你可以考慮一個 shell 腳本,它讀出螢幕的目前狀態,保存 shell 的數量,環境變數等,並將這些資訊放在啟動腳本中由您的
.screenrc
. 對我來說,這不值得付出努力,因為如果我可以自定義螢幕的預設視窗,我會欣賞重新啟動後乾淨的環境。