タイムアウト関数の戻り値

タイムアウト関数の戻り値

私はDebianのタイムアウト機能を使ってスクリプトを5秒間待ちます。これはうまくいきますが、私が経験している問題は戻り値が必要であるということです。たとえば、1 はタイムアウトを意味し、0 はタイムアウトがないことを意味します。どうすればいいですか?

私のコードを見てください。

timeout 5 /some/local/script/connect_script -x 'status' > output.txt
# here i need the return of timeout

ご覧のとおり、私のconnect_script -x 'status'はステータスを文字列として返し、それを画面に印刷します(おそらくこれを見ることはできません)。この質問の文脈は、サーバ(connect_scriptの場合)が停止する場合、スクリプトは何もしません。そのため、タイムアウトが必要です。タイムアウトしたらサーバーを再起動したいと思います。できますが、タイムアウトするかどうかを確認する方法がわかりません...

ベストアンサー1

タイムアウトが発生するとtimeout終了ステータス124; これを確認して、スクリプトがタイムアウトしたことを確認できます。

おすすめ記事