Демуре уже ответил на ваш конкретный вопрос. Однако это zsh вопрос и о PATH, Итак, вот еще один момент: помимо стандартной переменной $PATH, существует также $path, который является массивом. Здесь вы видите разницу (двоеточия или нет ...):
$ print $PATH
/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
$print $path
/bin /usr/bin /usr/local/bin /usr/X11R6/bin
Оба варианта автоматически синхронизируются. Итак, в чем преимущество использования массива?
- Последний вы можете объявить через
typeset -U path «сохранить только первое вхождение каждого дублированного значения» (из man zshbuiltins ). Это означает, что ваш путь остается чистым, даже если вы успешно ~/.zshrc (потому что вы изменили его или что-то еще) и не загромождайте его одними и теми же значениями снова и снова.
- Ты можешь использовать
path+=(/new/path) добавить новый каталог в ваш путь. Чтобы удалить элемент, вы должны использовать некоторые приемы, см., Например, https://stackoverflow.com/q/3435355/2037712 или же http://www.zsh.org/mla/users//2005/msg01132.html
- Вы можете легко зациклить элементы в ПУТИ через
for i ($path) { print $i # or do something else }
Наконец, вот выдержка из моего конфига:
typeset -U path
path=(/new/path1
/new/path2
$path)
export PATH
.zshenv,