Geek-Side

Resource > 関数

関数の書き方

関数は呼び出す前段に定義しておく必要があります。
書き方は、関数名をhogeとすると、2通りの書きかたがあります。

# 関数名の後にカッコを指定すれば関数となる
hoge() {
...
}

# 予約語functionを指定することもできる。この場合は関数名の後のカッコは指定しなくても良い
function hoge {
...
}

関数の戻り値

関数の戻り値は echo で返す場合と、returnで返す方法があります。
echoで返す場合は数値も文字列も扱うことができます。
returnで返す場合は、呼び出し側は$?変数を参照して戻り値を確認します。また数値しか扱えません。

# 文字列を戻り値とする場合は echo で返す
return_string() {
     echo 引数は $1
 }

# 関数の戻り値がresultに格納されます
result=`return_string "hoge"`

# returnは数値のみ戻り値とすることができ、$?で参照する
return_normal_number() {
     return 0
 }

# resultには関数の戻り値は格納される
result=`return_normal_number` 
# $?に戻り値が格納されており、0が表示される
echo $?