psqlの結果をbashで取得しようとしています
echo 'SELECT * FROM fictive_table LIMIT 1;' >> /tmp/x.sql
psql --single-transaction -d dbname -f /tmp/x.sql
echo $?
これは失敗しますが、bashで得られる結果は0です。ロジック/コードに問題はありますか?
マニュアルより
psqlは、正常に終了した場合は0をシェルに返し、それ自体の致命的なエラー(メモリ不足、ファイルが見つからない)が発生した場合は1を返します。
更新:@AndreaSpadacciniは正しいです。これは致命的ではありません。どうすればそれを捕まえることができますか?