Как отобразить имя хоста на экране, когда вы входите в удаленную систему? - PullRequest
5 голосов
/ 25 января 2012

У меня есть различные системы, в которые я регулярно захожу.Проблема в том, что в какой-то момент я забываю имя хоста, в который я ввел ssh.Было бы утомительно постоянно проверять имя хоста.Можно ли отобразить имя хоста на экране (я использую экран для SSH на удаленных машинах).

Например

$screen  
$ssh hostname.com

после того, как я ssh, на моем экране отображается текущее имя хоста.

Ответы [ 4 ]

2 голосов
/ 18 октября 2012

введите это .bashrc или .bash_profile

PROMPT_COMMAND='echo -ne "\033k$HOSTNAME\033\\"'

1 голос
/ 19 июля 2018

Это очень старый, но я нашел это очень полезным,

поместите это в .bashrc или .bash_profile

PROMPT_COMMAND = 'echo -ne "\ 033k $ HOSTNAME \ 033 \"'

Переменная PROMPT_COMMAND в Bash выполняется непосредственно перед PS1 (интерактивное приглашение). Не вдаваясь в подробности, я могу предположить, что Screen захватывает этот вывод, а не интерактивное приглашение PS1, и использует его для именования окна, а не вашего приглашения, которое может не содержать вашего имени хоста. Супер полезно, когда ssh'ing на несколько систем с основными / общими подсказками.

1 голос
/ 25 января 2012

Работает ли команда "hostname"?

Я подозреваю, что ваше решение будет зависеть от конкретной программы терминала. Какой у вас терминальный клиент? Взгляните на http://kpumuk.info/mac-os-x/how-to-show-ssh-host-name-on-the-iterms-background/.

0 голосов
/ 16 марта 2012

Взгляните на этот сайт. Он содержит настройки .screenrc, а также скрипт-обертку для ssh. Используйте оба, и это достигнет того, что вы пытаетесь сделать.

http://www.tenshu.net/p/screenssh.html

...