timeout
の場合 タイムアウトになると、ステータス 124 で終了します。これをチェックして、スクリプトがタイムアウトしたかどうかを判断できます。
マニュアルによると (man timeout
):
概要 timeout [OPTION] NUMBER[SUFFIX] COMMAND [ARG]...
[...] コマンドがタイムアウトした場合は、ステータス 124 で終了します。それ以外の場合は、COMMAND のステータスで終了します
これを、終了ステータスまたは戻り値が変数 $?
に格納されているという知識と組み合わせます。 、そして...
timeout 5 /some/local/script/connect_script -x 'status' > output.txt
RETVAL=$?
次に、$RETVAL
の値に基づいてさらに処理を行うことができます。 、タイムアウトの場合は 124、または connect_script
の終了ステータスに基づくその他の値になります .