Когда я делаю некоторые изменения в поведении shell / bash, такие как настройка псевдонима, есть ли быстрая команда для повторной инициализации окна терминала вместо закрытия и открытия нового окна?
49
Если вы хотите перезагрузить конфигурацию .bashrc, то:
source ~/.bashrc
Для меньшего набора текста вы можете заменить source
на точку:. ~/.bashrc
source ~/.bashrc
?source
специфично для bash..
является более стандартным. Оба работают одинаково в bash.Некоторое дополнение я нашел в man-странице из команды reset / tset
инициализация терминала сброса tset
команда:
reset
Tset инициализирует терминалы. Сначала Tset определяет тип используемого вами терминала. Это определение выполняется следующим образом с использованием первого найденного типа терминала.
кажется, что преимущество заключается в том, что он не зависит от используемой оболочки. также работает с рыбой здесь.
Поэтому для повторной инициализации любого терминала просто
ИЛИ ЖЕ
источник
Дополнительным вариантом
exec bash
является то, что если вы изменили свой.profile
(или.bash_profile
), вы можете сделатьЭто также будет читать ваш профиль снова. Также было бы
-i
неплохо добавить опцию, чтобы явно сказать bash, что это интерактивная оболочка, но обычно она сама это понимает.источник
Вы должны заменить запущенное приложение / оболочку новым экземпляром. Например, если вы используете
bash
предпочитаемую оболочку, введите следующую строку в командной строке ( $ - это место для начала вашей командной строки):Запущенное приложение / оболочка заменяется новым экземпляром
bash
like, начинающимся с нуля. Все ваши предыдущие модификации ушли.Примечание: не забывайте, что ваше терминальное приложение может быть перепрограммировано. Вы должны сбросить приложение терминала вручную.
источник
ваша оболочка является исполняемым файлом, который вы можете вызвать. Так что, если вы используете bash, вы можете позвонить,
bash
а если вы используете что-то еще, например zsh, вы можете просто ввестиzsh
источник
Использование
exec sudo --login --user $USER
.Если вы хотите , ранее введенные команды в disapper (полный сброс терминала), объединить его с
reset
такreset; exec sudo --login --user $USER
В Интернете есть много ответов, но большинство из них на самом деле не работают. Простой способ проверить - установить,
export SOMEVAR=42
затем выполнить команду сброса и выполнить командуecho $SOMEVAR
. Если это 42, среда не была сброшена.Существует также
exec -c bash -l
илиexec env -i bash -l
, но они не работают, каким-то образом переменная $ HOME не устанавливается после этого.источник