大多數語言都有變數的命名約定,我在 shell 腳本中看到的最常見的樣式是MY_VARIABLE=foo
.這是約定還是僅適用於全域變數?腳本的本地變數怎麼樣?
答案1
作業系統引入的環境變數或shell變數、shell啟動腳本或shell本身等通常都在CAPITALS
1中。
為了防止您的變數與這些變數發生衝突,最好使用lower_case
變數名稱。
1一個可能值得了解的值得注意的例外是shellpath
使用的陣列zsh
。這與公共變數相同,PATH
但表示為數組。
答案2
是的,bash 有完整的程式碼風格約定,包括變數名稱。例如,這是谷歌的外殼風格指南。
作為變數名稱的具體總結:
變數名稱:小寫,用底線分隔單字。前任:
my_variable_name
常數和環境變數名稱:全部大寫,以下劃線分隔,在文件頂部聲明。前任:
MY_CONSTANT
答案3
用底線分隔單字似乎是最好的方法。
當我可以自由選擇時,我有幾個理由更喜歡snake_case而不是camelCase:
- 靈活:可以使用大寫和小寫(例如
MY_CONSTANT
和my_variable
); - 一致:數字可以分開,使數字更可讀(例如
1_000_000_000
),許多程式語言都支援此功能; - 常見:常見於正規表示式
\w
處理底線,如單字字元和數字 ([a-zA-Z0-9_]
)。