シェルスクリプトを使用してクローン操作を監視したいと思います。ただし、最後のコマンドの終了コードを含む変数を使用すると、常に「0」になります。これは、cron操作の後にこのスクリプトを実行していて、「終了コード」が「0」(スクリプト開始)値を持つためだと思います。どのようにスクリプトの起動を無視し、「終了コード」変数を使用できますか?古いクローンの仕事?
$ ls foo;エコ$? ls:fooにアクセスできません:そのファイルまたはディレクトリはありません 2
$ls foo ls:fooにアクセスできません:そのファイルまたはディレクトリはありません $sh test.sh 0
私のtest.sh:
#!/bin/bash 通知(){ 終了コード=$? ${EXIT_CODE}エコー } 通知する
ベストアンサー1
終了コードをスクリプトにパラメータとして渡すことができます。
ls -l /tmp/filethatdoesnotex.ist
/usr/local/bin/test.sh $?
test.shを使う:
RESULT=$1
if [ $RESULT -gt 0 ]
then
echo "something bad happened and ended with result $RESULT" >&2
else
echo "everything is fine, sleep on"
fi