
Я читал об этой темездесьи попробовал предложенное решение по изменению имени терминала (см. рисунок в пункте номер 1)
Но никто из них не может изменить название терминала (пункт номер 1).
user@linux:~$ gnome-terminal --title="SOME TITLE HERE"
user@linux:~$
user@linux:~$ PROMPT_COMMAND='echo -ne "\033]0;SOME TITLE HERE\007"'
user@linux:~$
user@linux:~$ echo -ne "\033]0;SOME TITLE HERE\007"
user@linux:~$
Я знаю, что элемент номер 2 можно изменить с помощью PS1
. Но заголовок (элемент номер 1) все еще не изменился даже после того, как я изменилPS1
user@linux:~$
нормально. Я не хочу это менять, я просто хочу переименовать название терминала сверху (пункт номер 1)
решение1
Эта функция gnome-terminal --title
была удалена с версии Gnome v3.
Если вы хотите сохранить Gnome Terminal и изменить заголовок окна, вам придется использовать PS1. Ниже вы найдете информацию о том, как это сделать.
Терминал Gnome 2 был форкнут как mate-terminal, встроенный в Ubuntu Mate. Опция
title
все еще доступна в этой версииsudo apt-get install mate-terminal

С помощью Gnome Terminal можно задать заголовок окна, используя PS1.
Вы можете добавить функцию в свой
.bashrc
файл и вызвать ее, чтобы изменить заголовок окна/вкладки.
nano ~/.bashrc
Добавить функцию
function set-title() {
if [[ -z "$ORIG" ]]; then
ORIG=$PS1
fi
TITLE="\[\e]2;$*\a\]"
PS1=${ORIG}${TITLE}
}
source ~/.bashrc
перезагрузить
set-title Some new title
, чтобы изменить заголовок окна/вкладки
Ограничение: когда программа меняет PS1, заголовок также может измениться (пример: подключение по ssh к другому хосту сбросит пользовательский заголовок)
решение2
hostnamectl set-hostname
на 13.10+ десктоп
Это лучший способ, если у вас systemd (13.10 и выше) и если cloud-init не активен (см. ниже):
hostnamectl set-hostname 'new-hostname'
Это:
- не требует перезагрузки
- сохраняется после перезагрузки
Более подробная информация на сайте:https://askubuntu.com/a/516898/52975
18.04 и далее: cloud-init
18.04 Введенооблако-initкоторый может управлять настройкой имени хоста, поэтому hostnamectl
изменения не сохранятся после перезагрузки, если установлен cloud-init. TODO: как проверить, установлен ли он, установлен ли он по умолчанию на образе рабочего стола или только на сервере?
Если вы хотите, hostnamectl
чтобы изменения сохранились после перезагрузки, вам нужно будет отредактировать файлфайлы конфигурации cloud-init, отключить cloud-initмодуль установки/обновления имени хоста:
sudo sed -i 's/preserve_hostname: false/preserve_hostname: true/' /etc/cloud/cloud.cfg
или полностью отключить cloud-init:
sudo touch /etc/cloud/cloud-init.disabled
Смотрите также:Как изменить имя хоста без перезагрузки?