Есть ли способ узнать, какой профиль сейчас используется моей оболочкой? Кажется, я не могу его отследить, или, по крайней мере, его нет ни в одном из обычных мест. Я использую OS X, но предполагаю, что это будет одинаково во всех системах UNIX.
Есть ли у вас файлы с такими же именами, как у файла профиля zsh, но с расширением .zwc?
Они скомпилированы и, если они новее, будут запускаться вместо текстовой версии.
Предполагая, что это bash, я предполагаю, что он использует обычные файлы профиля в вашем домашнем каталоге и /etc
. Видеть этот вопрос который в основном указывает на раздел вызова man bash
"
When bash is invoked as an interactive login shell, or as a non-interactive 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.
Обновить:
Итак, вы используете zsh: man zsh
раздел ЗАПУСК / ВЫКЛЮЧЕНИЕ ФАЙЛОВ. В основном он будет использовать .zsomething
файлы, которые упоминаются и ищите в $ZDOTDIR
, если он не установлен, чем $HOME
. Краткое содержание файлов:
$ZDOTDIR/.zshenv
$ZDOTDIR/.zprofile
$ZDOTDIR/.zshrc
$ZDOTDIR/.zlogin
$ZDOTDIR/.zlogout
${TMPPREFIX}* (default is /tmp/zsh*)
/etc/zsh/zshenv
/etc/zsh/zprofile
/etc/zsh/zshrc
/etc/zsh/zlogin
/etc/zsh/zlogout
Просмотрите страницу руководства или используйте строки (1) в исполняемом файле (или обоих), чтобы найти все возможности и найти те, которые существуют в вашей системе. Обратите внимание, что один .profile может вызывать другой файл, поэтому вам, возможно, придется проверить каждый из файлов.
Также проверьте время последнего доступа; доступ к файлу профиля может быть недоступен при каждом запуске, или если существует другой файл и т. д. Зависит (очевидно) полностью от вашей конкретной оболочки.