~/.profile
загружается только при работе zsh
в sh
режиме совместимости, в противном случае он читает .zprofile
, а также .zshrc
для интерактивных и .zlogin
для оболочек входа в систему.
Их цель развивается с момента их загрузки. Как .zshrc
загружается для интерактивных оболочек, установите псевдонимы и т. Д. Вы ожидаете в таких случаях там.
.profile
имеет дополнительное свойство, которое также загружается несколькими другими оболочками (например bash
, если он не находит что-то более конкретное; или ksh
) тем или иным образом, так что вы можете сохранить конфигурацию для нескольких оболочек в этом файле.
Соответствующие выдержки из man zshall
акцента моего:
ЗАПУСК / ОТКЛЮЧЕНИЕ ФАЙЛОВ
Команды сначала читаются из/etc/zshenv
; [...]Команды затем читаются из
$ZDOTDIR/.zshenv
. Если оболочка является оболочкой входа в систему, команды считываются/etc/zprofile
и затем$ZDOTDIR/.zprofile
. Затем, если оболочка является интерактивной, команды считываются/etc/zshrc
и затем$ZDOTDIR/.zshrc
. Наконец, если оболочка является оболочкой входа в систему,/etc/zlogin
и$ZDOTDIR/.zlogin
читаются.СОВМЕСТИМОСТЬ
Zsh пытается эмулировать sh или ksh, когда он вызывается как sh или ksh соответственно; [...]Обычные сценарии запуска / выключения zsh не выполняются . За входом в систему
/etc/profile
следует источник$HOME/.profile
. Если переменная окружения ENV установлена при вызове, то$ENV
это источник после скриптов профиля. ЗначениеENV
подвергается расширению параметра, подстановке команд и арифметическому расширению, прежде чем интерпретируется как имя пути. Обратите внимание, что опция PRIVILEGED также влияет на выполнение файлов запуска.