Как перезагрузить.профиль bash из командной строки?

Как я могу перезагрузить .bash_profile из командной строки? Я могу заставить оболочку распознавать изменения в .bash_profile путем выхода и входа в систему, но я хотел бы иметь возможность сделать это по требованию.

13 ответов


просто типа source ~/.bash_profile

кроме того, если вы хотите сэкономить нажатия клавиш вы можете ввести . ~/.bash_profile


. ~/.bash_profile

просто убедитесь, что у вас нет никаких зависимостей от текущего состояния там.


просто наберите:

. ~/.bash_profile

однако, если вы хотите, чтобы источник его автоматически запускался при запуске терминала вместо запуска его каждый раз, когда вы открываете терминал, вы можете добавить . ~/.bash_profile to .

Примечание:

когда вы открываете терминал, терминал запускает bash в интерактивном режиме (без входа в систему), что означает, что он будет источником ~/.bashrc.

~/.bash_profile поставляется только bash при запуске в интерактивный вход в систему режим. Обычно это происходит только при входе в консоль (Ctrl+Alt+F1..F6), или соединяться через ssh.


вы также можете использовать эту команду для перезагрузки ~/.bash_profile для этого пользователя. Обязательно используйте тире.

su - username

  1. сохранить .файл
  2. домашний каталог пользователя Goto, введя cd
  3. обновить профиль с . .bash_profile

Мне нравится тот факт, что после того, как вы только что редактировали файл, все, что вам нужно сделать, это типа:

. !$

это источник файла, который вы только что отредактировали в истории. См.что такое 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-->

мой вывод заключается в том, что иногда необходим жесткий сброс