スクリプトに行エラーがないか確認してください。

スクリプトに行エラーがないか確認してください。

私のスクリプトにエラーチェックソリューションを追加したいです。次のようになります。

! [ `echo $?` != 0 ] || echo "omg, st went wrong, CTRL+C? `read`"

私の目標は、この行が実行されたときに「$?」をチェックすることです。 0以外の場合は、「OMG、stに問題が発生しました。CTRL + C?」と表示し、ユーザー入力またはCtrl + Cを待ちます。ただし、「OMG、stに問題が発生しました。CTRL + C?」を印刷する前に入力を待つため、1行ずつ機能しません。テキスト。誰もが私が何を逃しているのを助けることができますか?

ありがとうございます。

更新:次のようにstコマンドの後にこれを行うのが最善です。スクリプトに行エラーがないか確認してください。

「悪いコマンド」は「uname -k」です。良いコマンドは「echo hi」です。 uname は 0 以外の終了コードを提供し、echo は 0 を提供します。

ベストアンサー1

これは正しいです。`read`実行され、結果がに送信される文字列に挿入されますecho

これらすべての補間法などを使用すると、実行する方法は非常に困難です。

if [[ $? -ne 0 ]]; then
    echo -n 'command failed.  ^C or "q" to abort.'
    read c
    [[ "$c" == q ]] && exit
fi

おすすめ記事