0

私はこれをしたい:

./first.sh
if [ $? -ne 0 ]; then
exit
fi
# pipe output of first.sh to second.sh

したがって、成功しsecond.shない限り実行するべきではありませんが、その間にfirst.sh出力をどこにパイプするかは本当にわかりません。first.sh

4

2 に答える 2

1

それをファイルにダンプして、成功したsecond.sh場合はそれを書き込んでみませんか?first.sh

./first.sh > /tmp/first.pid 
if [ $? -ne 0 ]; then
   exit
fi   
./second.sh < /tmp/first.pid

同時実行性が問題になる場合は、pidなどでファイルのスコープを設定することをお勧めします。

于 2012-12-10T16:20:57.530 に答える
0

パイプ内のコマンドが失敗したときにエラーと終了が報告されるようにするbashオプションを設定できます。pipefail

set -e # Set exit on error
set -o pipefail # Set exit on error to work with pipes

情報源

于 2012-12-10T16:26:08.233 に答える