Как перезагрузить.профиль bash из командной строки?
Как я могу перезагрузить .bash_profile
из командной строки?
Я могу заставить оболочку распознавать изменения в .bash_profile
путем выхода и входа в систему, но я хотел бы иметь возможность сделать это по требованию.
13 ответов
просто типа source ~/.bash_profile
кроме того, если вы хотите сэкономить нажатия клавиш вы можете ввести . ~/.bash_profile
просто наберите:
. ~/.bash_profile
однако, если вы хотите, чтобы источник его автоматически запускался при запуске терминала вместо запуска его каждый раз, когда вы открываете терминал, вы можете добавить . ~/.bash_profile
to .
Примечание:
когда вы открываете терминал, терминал запускает bash в интерактивном режиме (без входа в систему), что означает, что он будет источником ~/.bashrc
.
~/.bash_profile
поставляется только bash при запуске в интерактивный вход в систему режим. Обычно это происходит только при входе в консоль (Ctrl+Alt+F1..F6), или соединяться через ssh
.
вы также можете использовать эту команду для перезагрузки ~/.bash_profile для этого пользователя. Обязательно используйте тире.
su - username
Мне нравится тот факт, что после того, как вы только что редактировали файл, все, что вам нужно сделать, это типа:
. !$
это источник файла, который вы только что отредактировали в истории. См.что такое bang доллар в Баш.
добавить alias bashs="source ~/.bash_profile"
в ваш файл bash.
Так что вы можете позвонить bashs
в следующий раз
вам просто нужно ввести . ~/.bash_profile
см.:https://superuser.com/questions/46139/what-does-source-do
Если .файл не существует, вы можете попробовать запустить следующую команду:
. ~/.bashrc
или
source ~/.bashrc
вместо .файл. Вы можете найти более подробную информацию о bashrc и
Я использую Debian и я могу просто типа exec bash
для достижения этой цели. Я не могу сказать, будет ли он работать на всех других дистрибутивах.
Я хотел опубликовать быстрый ответ, который при использовании source ~/.bash_profile
или ответы, упомянутые выше, работают, одно дело упомянуть, что это только перезагружает ваш профиль bash в текущей вкладке или сеансе, который вы просматриваете. Если вы хотите перезагрузить свой профиль bash на каждой вкладке / оболочке, вам нужно ввести эту команду вручную в каждом из них.
Если вы используете iTerm, вы можете использовать ⌘cmd в+Shift+Я ввести команду во все текущие tabs. Для терминала может быть полезно ссылаться на это вопрос;
alias reload!=". ~/.bash_profile"
или если хотите добавить журналы через функции
function reload! () {
echo "Reloading bash profile...!"
source ~/.bash_profile
echo "Reloaded!!!"
}
Я запускаю Sierra и некоторое время работал над этим (пробовал все рекомендуемые решения). Я стал смущен, поэтому в конце концов попытался перезагрузить компьютер! Это сработало!--1-->
мой вывод заключается в том, что иногда необходим жесткий сброс