我正在尝试在 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%%%% *})'