我正在嘗試在 tmux 狀態列中設定 SSH 用戶端的傳入 IP 位址,但我無法弄清楚。這是我在 .tmux.conf 中的當前設置
set -g status-right '#[fg=white]#(echo $SSH_CONNECTION | awk '{print $1}')'
是什麼賦予了?
答案1
嘗試這個。 Bash 參數擴充功能可讓您使用 % 運算子從變數的擴充中刪除後綴。單一 % 符號匹配最短的後綴,%% 匹配最長的後綴。由於SSH_CONNECTION
有 3 個空格分隔的字段,因此您需要使用 %% 刪除除第一個字段(IP 位址)之外的所有字段。
${SSH_CONNECTION%% *} # Remove the first space and everything that follows it.
由於 的值首先status-right
被處理strftime(3)
,因此您需要將百分號加倍,因為strftime
會將 %% 替換為文字 %。
set -g status-right '#[fg=white]#(echo ${SSH_CONNECTION%%%% *})'