我想创建一个脚本,将$ PATH设置为我选择的一组目录(因此忽略预定义的路径,例如/ usr / bin,/ usr / local / bin等等......),然后推出ZSH。
这对BASH来说很有用:
#!/bin/sh
PATH="/Users/Thoht/Sites/djangostack/apps/django/bin"
# exec /bin/bash --noprofile --norc
我得到一个新的BASH会话,路径只是上面定义的路径,完成后我用Ctrl-D取消。我想为ZSH重新创建这个脚本,但没有成功。我试过这个:
#!/bin/sh
PATH="/Users/Thoht/Sites/djangostack/apps/django/bin"
# exec /bin/zsh -f
然而,预定义的路径,例如/ usr / bin和所有爵士乐仍然存在,这使得脚本无用。
我最好加载我的.zshrc,只是暂时更改路径。
编辑我忘了添加一件事 - 首先读取的/ etc / zshenv(或者我相信)包含这个脚本:
# system-wide environment settings for zsh(1)
if [ -x /usr/libexec/path_helper ]; then
eval `/usr/libexec/path_helper -s`
fi
编辑2第一次编辑无关紧要,因为我不想使用-f选项。一个更精确的问题是:
“我如何在shell脚本中将.zshrc路径之前的路径添加到$ PATH,然后正常启动ZSH(如同读取.zshrc一样)?”