Terminal
了解環境變數/shell 語法
我只是按照 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/...
呢?
如果該變數已設置且不為空,則參數替換
${variable:-value}
將被替換,否則將被替換為. 這是一個標準的參數擴展。$variable``value
在這種情況下,它允許使用者設置
ZSH_CUSTOM
他們保存 oh-my-zsh 自定義文件的位置,或者不設置它並使用~/.oh-my-zsh/custom
.不使用這種結構會使定制設置的使用者的生活變得有點尷尬,因為他們必須手動修改命令,或者在安裝後將文件移動到正確的位置(並且可能冒著預先存在的風險被 ) 覆蓋的文件
git clone
。