Возможный дубликат:
разница между .bashrc и .bash_profile
Какая разница между .profile
и .bash_profile
, и когда вы настраиваете какие?
Т.е., если я настраиваю .bash_profile
, мне все еще нужно настроить .profile
?
Возможный дубликат:
разница между .bashrc и .bash_profile
Какая разница между .profile
и .bash_profile
, и когда вы настраиваете какие?
Т.е., если я настраиваю .bash_profile
, мне все еще нужно настроить .profile
?
Ответы:
Предполагается, bash
что ваша оболочка по умолчанию, различия описаны в bash
man-странице ( man bash
):
When bash is invoked as an interactive login shell, or as a non-interac-
tive shell with the --login option, it first reads and executes commands
from the file /etc/profile, if that file exists. After reading that file,
it looks for ~/.bash_profile, ~/.bash_login, and ~/.profile, in that
order, and reads and executes commands from the first one that exists and
is readable. The --noprofile option may be used when the shell is started
to inhibit this behavior.
На странице руководства есть более подробная информация о режиме совместимости POSIX-оболочки, откуда и .profile
происходит. Прочитайте весь раздел man-страницы для всех деталей.
Если вы настраиваете .bash_profile
, вам также не нужно настраивать .profile
.
Мне нравится хранить свои собственные псевдонимы и команды, .profile
чтобы, если я что-то напутал, я знал, что всегда могу удалить, .profile
не затрагивая систему в целом или другие приложения, которые модифицируются .bash_profile
(например, MacPorts).
Чтобы использовать a .profile
, вам может потребоваться включить строку source ~/.profile
в ваш файл .bash_profile
, чтобы .profile
файл был прочитан (см. Ответ Неда Дейли).
.profile выполняется bash, когда вы получаете нормальный процесс оболочки - например, вы открываете инструмент терминала. .bash_profile выполняется bash для оболочек входа в систему - так что это, например, когда вы telnet / ssh подключаетесь к своей машине удаленно. Например, если вы ssh удаленно подключаетесь к машине (скажем, вы открываете X Terminal), вы изначально запустите .bash_profile. Если в этом XTerminal вы наберете «xterm» и создадите другой X Terminal, тогда .profile будет выполнен для второго экземпляра XTerminal. Файлы находятся в вашем домашнем каталоге (~). Если я не ошибаюсь по умолчанию, они оба выполняют ~ / .bashrc, так что вы можете отредактировать это, чтобы настроить общие параметры / переменные для оболочек входа и не входа в систему (например, установка PATH, некоторые псевдонимы / ярлыки и т. Д.).
.profile
?
для быстрой и простой конфигурации (где вы не хотите усложнять вещи) просто настройте все в вашем ~ / .profile. Только когда вы столкнетесь с некоторыми проблемами (но, вероятно, никогда не), узнать больше о .bash_login или .bash_profile;)
Я тоже на OS X и никогда не нуждался в .bash_profile или .bash_login и использую только .profile, но ваш пробег может отличаться ...
.profile
только.bashrc
:(