目的
- スクリプトファイルの品質を一定に保つ。
- ルールを決めておくことにより、書き方の変化を減らす。
※これは個人的なコーディング規約です。プロジェクトで決まっている場合や、個人的にもっと良い規約があればそちらを使用してください。もしもっと合理的な規約があれば教えていただきたいです!
bashコーディング規約
-
shebang(シバン)は
#!/bin/bashを使用する。 -
インデントは半角スペース二つ入れる
-
スクリプトの使用方法や用途、実行時に必要名引数をスクリプトの最初に記載する。
-
パイプの前後に半角スペースを一つづつ入れる。
-
変数系
- 格納される値が変化しないときはreadonly宣言をする。
- 格納される値が変化しないときは変数名を全て大文字にする。
- 格納される値が変化するときは変数名を小文字にする。
- 複数の単語を用いて変数名をつけるときは単語と単語の間を
_(アンダーバー)で繋ぐ。 - ファイルパスを格納するときは格納される値の末尾に
/(スラッシュ)をつけない - スクリプトを運用中に修正する可能性のある変数の定義は序盤で行う
- スクリプトの運用中に修正為る可能性が著しく低い変数の定義は処理で使用する直前で定義する。
-
関数系
- 必ずfanction宣言を行う。
- 関数名は小文字で命名する。
- 複数の英単語を用いて関数名をつけるときは単語と単語の間を
_(アンダーバー)で繋ぐ。 - 必ずreturnする。returnのコードは正常終了時は0、異常終了時は1
-
if文
-
ifとthenは同一ステップ内に記載する。 -
ifとelseとfiはインデントを合わせる。 -
;(セミコロン)の後ろは半角スペースを一つ入れる
-
-
for文 while文
-
forとwhileはインデントを合わせる。 -
doとdoneはインデントを合わせる。
-