まくまくLinux/Shellノート
Bash の構文: 関数から戻り値を返す
2012-07-09

シェル関数が return で返すことのできる値は数値 (0~255) だけです。 return で返された戻り値を参照するには $? を使います。

function myfunc {
  return 1
}

myfunc
echo $?

関数の実行結果を文字列として受け取りたい場合は、関数内部で echo した結果を以下のようにバッククォートで関数呼び出しして取得します。

function myfunc {
  echo 'Hello'
}

val=`myfunc`
echo $val
2012-07-09