
我經常在 screen 內使用 ssh 連接到一組機器。最好讓標題行顯示有關我透過 ssh 連接到的伺服器的資訊(例如機器名稱、正常運行時間和來自 vmstat 的資訊)。
我注意到backtick
screen 命令似乎只在運行 screen 的地方運行,它不在遠端電腦上執行。有沒有簡單的方法可以讓反引號在目前 ssh 的任何機器上運行命令?
答案1
Screen 識別視窗內的終端可以發送以影響 Screen 的一些額外控制序列。您特別感興趣的可能是 \ek 和 \e\ 序列。 Screen 將使用這兩者之間的任何內容作為視窗標題。然後,您可以將視窗標題放入標題行中。
http://www.gnu.org/software/screen/manual/screen.html#index-control-sequences-107
試試一下:
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007\ek${USER}@${HOSTNAME}: ${PWD/$HOME/~}\e\\"'
我用它作為遠端系統上的提示符號。它會自動將視窗標題設為user@name: path
。 Screen 的轉義序列位於該指令的末端。