gitコマンドの結果が出た場合のbash条件

gitコマンドの結果が出た場合のbash条件

シェルスクリプトで無効なgitコマンドが原因で、次のエラーが発生します。 git push blabla master明らかにするfatal: 'blabla' does not appear to be a git repository

このエラーメッセージに応答してエラーが発生した場合は、アクションを実行したいと思います。これを行うための良い方法はありますか?

答え1

次のように試すことができます。

if git push blabla 2>&1 | grep "fatal: 'blabla' does not appear to be a git repository"; then  
  <fatal-case instructions>  
else  
  <successful-execution-case instructions>  
fi

gitまたは戻りコードを処理したい場合:

if [[ ! $(git push blabla) ]]; then  
  <fatal-case instructions>  
else 
  <successful-execution-case instructions>
fi  

答え2

このようにテストしてみることができます。

if /usr/bin/git push; then
    echo "OK"
else
    echo "Not Ok"
fi

関連情報