TAG

bash

  • 2020年5月22日

[Bash] 外部プログラムが正常終了以外なら標準エラーに出力するサンプル

サンプルコード

#!/bin/sh

cd `dirname $0`

LOG=`./run_update.sh "$@"`

if [ $? != 0 ]; then
  echo "failed: run_update $@" > /dev/stderr
  echo "$LOG" > /dev/stderr
fi

解説

バッククォートを使ってコマンドの実行結果(標準出力)をLOG変数に格納しています。
終了ステータスが0以外なら、エラーメッセージとしてstderrに出力しています。…