■処理の内容
存在しないファイルの内容の出力結果を変数への格納を試みる処理。失敗した場合は、echoで「失敗」と出力する。
■ソースコード
・ソースコード1
bash
# 関数定義 function test(){ ary=`cat /tmp/test.txt` if [ $? -ne 0 ];then echo 失敗 fi } #関数実行 test
・ソースコード2
bash
# 関数定義 function test(){ ary=`cat /tmp/test.txt` if [ $? -ne 0 ];then echo 失敗 fi } #関数の実行結果を変数に格納する ary=`test`
■エラー内容
・ソースコード1の場合
cat :/tmp/test.txtそのようなファイルやディレクトリはありません
echo 失敗
・ソースコード2の場合
cat :/tmp/test.txtそのようなファイルやディレクトリはありません
■疑問点
なぜソースコード2では、if文が実行されず「失敗」と出力されないのでしょうか?
まだ回答がついていません
会員登録して回答してみよう