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