shell 腳本中的變數有命名約定嗎?

shell 腳本中的變數有命名約定嗎?

大多數語言都有變數的命名約定,我在 shell 腳本中看到的最常見的樣式是MY_VARIABLE=foo.這是約定還是僅適用於全域變數?腳本的本地變數怎麼樣?

答案1

作業系統引入的環境變數或shell變數、shell啟動腳本或shell本身等通常都在CAPITALS1中。

為了防止您的變數與這些變數發生衝突,最好使用lower_case變數名稱。


1一個可能值得了解的值得注意的例外是shellpath使用的陣列zsh。這與公共變數相同,PATH但表示為數組。

答案2

是的,bash 有完整的程式碼風格約定,包括變數名稱。例如,這是谷歌的外殼風格指南

作為變數名稱的具體總結:

變數名稱:小寫,用底線分隔單字。前任:my_variable_name

常數環境變數名稱:全部大寫,以下劃線分隔,在文件頂部聲明。前任:MY_CONSTANT

答案3

用底線分隔單字似乎是最好的方法。
當我可以自由選擇時,我有幾個理由更喜歡snake_case而不是camelCase:

  1. 靈活:可以使用大寫和小寫(例如MY_CONSTANTmy_variable);
  2. 一致:數字可以分開,使數字更可讀(例如1_000_000_000),許多程式語言都支援此功能;
  3. 常見:常見於正規表示式\w處理底線,如單字字元和數字 ( [a-zA-Z0-9_])。

相關內容