Terminal

了解環境變數/shell 語法

  • January 27, 2019

我只是按照 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

引用自:https://unix.stackexchange.com/questions/497059