如何選擇 Linux 中 PuTTY 標題列中顯示的內容?

如何選擇 Linux 中 PuTTY 標題列中顯示的內容?

在 PuTTY 配置中,終端機 → 功能中有一個選項,名為停用遠端控制視窗標題更改。如果不啟用該功能,每次我在控制台中按下回車鍵時,PuTTY 的標題列都會發生變化。

我認為從 Linux 設定標題列文字比為我使用的每個 PuTTY 用戶端指定一個標題列文字是一種更乾淨的解決方案。那麼在哪裡可以修改Linux設定的視窗標題呢?


$ uname -a
Linux drevo 2.6.32-5-amd64 #1 SMP 1 月 16 日星期一 16:22:28 UTC 2012 x86_64 GNU/Linux

$ cat /etc/debian_version
6.0.4

答案1

大多數終端程式 - 包括 konsole、putty 和 xterm - 模擬舊的 VT100 終端。此終端允許您使用稱為轉義序列的特殊字元序列來設定某些內容,包括粗體、顏色、設定終端標題等。

bash shell 有一個名為PROMPT_COMMAND 的變量,如果設定了該變量,則會在列印出每個提示之前對其進行評估(我相信zsh 有類似的東西,事實上我認為bash 從它們那裡獲取了程式碼) 。您可以在 PROMPT_COMMAND 中輸出轉義序列,它將設定您的標題列。

這是我的(Linux/bash):

USER=$(/usr/bin/id -un)
HOSTNAME=$(uname -n)
HOSTNAME=${HOSTNAME%%.*}
PROMPT_COMMAND='echo -ne "\e]0;$USER@${HOSTNAME}: $(pwd -P)\a"'

你可以把它放在你的 ~/.bashrc 中

您可以使用終端進行許多自訂操作。我喜歡在提示中加粗,以便更容易看到提示的結尾。這使得它變成大膽的黃色,與我預設的黑色背景形成鮮明對比:

PS1="\[\e[33;1m\]\h:\$\[\e[0m\] "

看看 Linux Prompt Customization,你會發現更多的 HowTos 多到你不知道該怎麼做。選擇您認為最容易閱讀的一本。

答案2

終端標題是透過在控制台輸出中使用特殊轉義序列來設定的。預設情況下,bash 提示字元包含這些轉義序列並將標題設定為目前工作目錄。

所以你必須編輯你的 PS1 變數(大多數時候它是在 中設定的~/.bashrc),否則每次顯示提示時 bash 都會覆蓋你的標題。

然後,您可以透過將以下內容放入登入時執行的腳本中來設定標題,例如~/.profile

echo -e "\033]0;<your string>\007"

答案3

我搜尋了很多論壇,但沒有找到問題的答案:
如何將所有指令輸出取得到 Putty 標題?

其他程式需要它來了解伺服器上的某些作業何時完成以及完成是否正確。 Plink 標準輸出和標準輸入無法正常運作。我使用了許多帶有等待延遲的調整,並且對於某些有效的命令,對於其他無效的命令。無法在該伺服器上安裝 XSEL 和 XCLIP。

所以這是解決方案:

  1. 取得文件中的命令輸出。
  2. 回顯該文件的標題。

在 Putty 用戶端和 SUSE 伺服器上,它看起來像這樣:

ls /home | grep domagaja > logutoit.txt 
echo -e "\033]0\\;$(cat logutoit.txt)\\007\\c"

希望有人能夠使用這個。當然,它並不適用於所有伺服器類型和膩子客戶端設置,但這個想法應該運作良好。

相關內容