Я пытаюсь установить входящий IP-адрес моего SSH-клиента в строке состояния tmux, но, хоть убей, не могу разобраться. Это моя текущая настройка в моем .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%%%% *})'