На этот вопрос уже есть ответ здесь:
Я использую Ubuntu Server поверх SSH, и я вижу $
вместо имени пользователя (например, test @ desktop
).
Как сделать так, чтобы терминал отображал test @ desktop
вместо $
?
Необходимо определить переменную PS1 в клиентской системе и удостовериться, что определение получено когда Вы ssh
.
возможно, что это уже определяется в .bashrc
в удаленной системе и таким образом, просто необходимо получить .bashrc
путем запуска интерактивной оболочки (замена remote-sys
с именем удаленной системы, очевидно)
ssh remote-sys -t bash -i
<час> , Если это не работает, потому что .bashrc
не существует в удаленной системе или не имеет PS1 определенным, и Вы хотите использовать те же настройки в удаленной системе как Ваша локальная система, затем скопировать по Вашему собственному .bashrc
:
scp ~/.bashrc remote-sys:.bashrc
Или можно сделать файл просто для установки подсказки путем, Вы хотите ее в удаленной системе..., например
nano .set-prompt
, вводят текст (это устанавливает user@host как подсказку)
export PS1="\u@\h "
или если Вы хотите, чтобы она была похожа на подсказку Ubuntu user@host:working-directory$
export PS1="\u@h:\w$ "
, или настроить однако Вас любят. Сохраните файл и выход, затем scp
это к удаленной системе
scp .set-prompt remote-sys:.set-prompt
, Когда Вы ssh
к машине необходимо будет получить файл явно и сказать удару делать оболочку интерактивной:
ssh remote-sys -t "bash --rcfile ~/.set-prompt -i"
, Если Вы делаете sudo -i
для изменения на корень в удаленной системе, подсказка изменится снова, поскольку корень .bashrc
будет получен.
Если Вы - SSH-луг в sh
сессия, которая я думаю, имеет место, судя тем, что Вы в настоящее время имеете, можно добавить переменные и команды к PS1:
PS1='$USER@$(hostname)\$ '
, Если бы Вы - SSH-луг в bash
сессия, Вы имеете бесконечные опции , но я рекомендовал бы использовать значение по умолчанию, если Вы просто входите в это. Для установки PS1 только на текущей сессии выполните это:
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
Для внесения изменения постоянным откройте ~/.bashrc
на удаленной машине и добавьте вышеупомянутую строку к нему.
Видят , Где я могу найти полную ссылку для переменной $PS1? для понимания то, что делает вышеупомянутая строка.
P.S. Я не использую SSH очень сам, таким образом, Вам, вероятно, придется изменить некоторые другие настройки, чтобы заставить этот материал работать.
PS1="/u@/h"
даст Вам, что Вы просите то, хотя я не рекомендую сделать это, поскольку это будет мешать устанавливать, находитесь ли Вы в режиме суперпользователя или стандарте.
Для возврата его к значению по умолчанию для 16,04 (и ранее?) использование PS1="\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\u@\h:\w\$"
можно делать изменения постоянными путем редактирования/etc/bash.bashrc и добавления изменений с любимым редактором
Источники: эта страница и тестирование.