シェル関数 決まった処理を関数として定義する

 決まった動き(動作)をする処理を関数として定義する事でサブルーチン化する事ができる。
引数も渡すことができるので、通常のコマンドの様に使う事ができる。

FUNC_LOGIN(){
	who
	id
	hostname
}
FUNC_LOGIN
終了ステータス

 関数内で最後に実行されたコマンドがその関数の終了ステータスになります。
明示的に「return」コマンドを使って終了ステータスを定義する事はできます。

関数内の変数・位置パラメータ

 関数内で設定した変数は、関数を抜けても維持します。
しかし、位置パラメータ(「set」や「shift」コマンド)を関数内で変更しても関数を抜けると関数呼び出し前の状態に戻ります。
なので、もし関数内だけの変数を使いたい場合は関数内「{ }」でサブシェル「( )」を使う事で実現できる。

関数を定義する際にfunctionを使う事ができるが、これはbashでしか使えないのでやめた方がいいと思われる。

function FUNC_LOGIN(){
	who
	id
	hostname
}
FUNC_LOGIN