終了2のif条件を返すエラー文のログの作成

終了2のif条件を返すエラー文のログの作成

条件節に 2 つの終了がある 5 分ごとに実行されるスクリプトがあります。

#!/bin/bash
date=$(date +%Y)
if [ $date -eq '2014' ]
then
    echo "Current year is $date"
    exit 0
else
    echo "Current year is not $date"
    exit 2
fi

ログが終了2にのみ書き込まれるようにどのように指定しますか? crontabでこれは可能ですか?

5 * * * * /home/user/script.sh >> script.log 2>> script.err

私はすでに知っています ">>スクリプト。ログ"スクリプトに書き込まれたすべての戻り値と「2>>スクリプト。エラー」スクリプトが正しく実行されない場合にのみ作成されます。それで、あなたはスクリプトに2番出口の場所だけを書く機会があるかどうか疑問に思います。

ベストアンサー1

stderrリダイレクトを使用するエラーを作成するには1>&2:

echo "Current year is not $date" 1>&2

exit [number]戻りコードを指定します[number]

また見なさい:

ファイル記述子

標準ストリーム

リダイレクト情報

おすすめ記事