関数の定義と呼び出し
12月 26, 2009
シェルスクリプトにおいて、関数は1つ以上の処理に名前をつけて定義したもの。
関数の定義が読み込まれるとメモリに常駐するため、一度読み込まれた関数は高速に動作し、
削除しない限り何度でも繰り返しの利用が可能となる。
何度も繰り返し利用するような処理をあらかじめ関数として定義しておけば、
さまざまなスクリプトに流用できる。
関数を実行する時に新しいプロセスは生成されず、現在のシェル内で実行される。
書式1

書式2

関数の定義には上記二通りのパターンがあり、どちらでもよい。
シェルスクリプト内では、関数の定義→呼び出しの順に記述する。
関数の定義と呼び出し

以下は定義した関数を対話式コマンドから呼び出す例。
そのままだと有効にならないが、sourceコマンドを実行することにより関数の処理を呼び出せる。
sourceでも「.」(ドット)でも可。

特定の関数を頻繁に利用する場合、別ファイルに格納した定義をスクリプトから呼び出こともできる。
その場合は「./関数を定義したファイル名」と記述。
Categories: shell