スクリプト内からアーカイブを作成していて、何らかの理由で失敗した場合はいくつかのアクションを実行します。エラーが発生したにもかかわらず、Tar終了コード0「開くことができません:そのようなファイルやディレクトリはありません」
if ! sudo tar -zcf "/not/existing/dest.tar.gz" "/existing/archive/src/"; then
echo "Tar failed"
fi
echo "Tar exited with error code $?"
次の出力が生成されます:
エラーケースをチェックするためのコードは次のようになります
tar (child): /not/existing/dest.tar.gz: Cannot open: No such file or directory
tar (child): Error is not recoverable: exiting now
Tar exited with error code 0
はなぜタールは、それは明らかに失敗していても、コード0で終了されます?
いくつかの詳細に関する情報:
OS: Ubuntuの16.04
タール--version:タール(GNUタール)1.28
sudoを--version:バージョン1.8.16
@Cyrusもし0でなければ 'Tar failed 'とエコーするはずです。 – Barmar