コードを関数に整理する

Bash:
コードを関数に整理する

方法:

Bashでシンプルな関数を作成します:

greet() {
  echo "Hello, $1!"
}

パラメーターを指定して関数を呼び出すには:

greet "World"  # 出力:Hello, World!

関数はreturnを使用して数値ステータスコードを返します(実際のデータ返却には使用しません):

add() {
  return $(($1 + $2))
}

add 3 4
echo $?  # 出力:7

$?は最後のコマンドの戻り値をキャプチャすることに注意してください。これはaddの数値結果です。

詳細解説

Bashにおいて、関数は初期バージョンからコードを区画化する手段としてありました。歴史的に言えば、関数を使用することは、コード品質を向上させるために1960年代に導入された構造化プログラミングの原則に沿っています。

関数の代替手段には、スクリプトファイルをソーシングしたりエイリアスを使用することがありますが、これらは同じレベルのモジュール性や再利用性を提供しません。

Bashにおける注目すべき実装の詳細は、関数は第一級の市民であるということです;他の言語のような特定の宣言キーワード「function」はありませんが、可読性のためにBashでは「function」がオプショナルです。関数のスコープも興味深いものがあります—変数はデフォルトでグローバルであるため、適切に管理されない場合は予期せぬ動作につながることがあります。

参照