コマンドが失敗した場合、パイプは早く終了します。

コマンドが失敗した場合、パイプは早く終了します。

私が探しています前のコマンドが失敗した場合はパイプを終了します。しかし、私はこの問題に対するより一般的な解決策を探しています。

chlist -q -v -m -r $sourcelist | \
grep '^USER:' | \
chlist -q -v -f - $superlist

問題は、最初のchlistが失敗した場合、2番目のchlistに入力がなければ本当に悪いことです。

最初のchlistの出力を一時ファイルに入れてからシャットダウン状態を確認すること(パイプをまったく使用しないなど)に加えて、2番目のchlistが実行されないようにするソリューションはありますか?

ベストアンサー1

パイプライン内のすべてのコマンドは非同期で始まるため、最後のコマンドが入力なしで実行されないようにするには、提案したようにパイプラインを分割する必要があります。またはchlist(わかりません)、そうするオプションがあるかもしれません。

おすすめ記事