2

Недавно я понял, что не смог бежать

. .zshrc

в моем домашнем каталоге. Это дает мне ошибку выше. Это действительно странно, и это меня раздражает, так как в прошлом все работало идеально.

В том же каталоге любая из приведенных ниже команд работает нормально

. ~/.zshrc
source .zshrc  

Вывод из echo $PATH | tr ':' '\n'

/Users/prashanthcr/.rvm/gems/ruby-2.2.0/bin
/Users/prashanthcr/.rvm/gems/ruby-2.2.0@global/bin
/Users/prashanthcr/.rvm/rubies/ruby-2.2.0/bin
/Users/prashanthcr/.nvm/versions/node/v5.5.0/bin
/Users/prashanthcr/Library/Android/sdk/platform-tools
/Users/prashanthcr/Library/Android/sdk/tools
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
/opt/X11/bin
/usr/local/MacGPG2/bin
/Users/prashanthcr/.rvm/gems/ruby-2.2.0/bin
/Users/prashanthcr/.rvm/gems/ruby-2.2.0@global/bin
/Users/prashanthcr/.rvm/bin

Использование zsh в OS X 11.11.3

1 ответ1

4

zsh работает как положено (см. man zshbuiltins):

  • . File ищет $PATH чтобы найти File если в имени нет / ; в то время как
  • source почти такой же как . За исключением того, что сначала он ищет рабочий каталог.

Я не знаю , . .zshrc работал ранее, если не было ошибки в более раннем выпуске zsh .

Вы можете:

  1. alias .=source ;
  2. ссылка ~/.zshrc на каталог в $PATH ;
  3. добавьте свой домашний каталог в $PATH (не рекомендуется); или же
  4. жить с необходимостью печатать . ./.zshrc (это то, что я всегда делаю в bash , где . и source идентичны, и я хочу быть уверенным в расположении скрипта).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .