我只是按照 zsh-autosuggestions 的安装说明进行操作我不明白以下命令的哪一部分正在执行:
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
- 其作用是什么
${ZSH_CUSTOM:- ...}
? - 为什么不直接克隆到
~/.oh-my-zsh/...
?
答案1
如果该变量已设置且不为空,则参数替换${variable:-value}
将被替换为,否则将被替换为。这是$variable
value
标准参数扩展。
在这种情况下,它允许用户设置ZSH_CUSTOM
保存 oh-my-zsh 自定义文件的位置,或者不设置它并使用默认位置~/.oh-my-zsh/custom
.
不使用此构造将使定制设置的用户的生活有点尴尬,因为他们必须手动修改命令,或者在安装后将文件移动到正确的位置(并且可能面临预先存在的风险)文件被git clone
) 覆盖。