⛳
bashのfunctionの戻り値とexit status
bashで戻り値とexit statusがごっちゃになっていたのでメモ。
[参考]
戻り値
function func1(){
echo "2"
echo "err" >&2
return 1
}
return_value=`func1`
rc=$?
上記コードでreturn_valueに格納される値「2」。function内で標準出力に出力した内容がすべて格納される。標準エラー出力に出力した内容は含まれない。
exit status
上記コードでrcに含まれる値「1」。8bitの範囲である0-255の範囲しか指定できない。
Discussion