该脚本根据第一个脚本的输出运行两个脚本,我想选择是否运行脚本。例如
Mainscript.sh
./script1.sh....
有没有办法在mainscript.sh中检查script1.sh的输出? 因为如果输出两个系统之间有连接,那么我需要运行第二个脚本。我可以用python做,或者我只能用bash做吗?
答案 0 :(得分:2)
一种常见的安排是编写脚本以便编程操作方便。具体而言,这意味着您的脚本应在成功时返回零退出代码,否则返回非零值。那么你要求的是一个简单的问题
script1 && script2
或更复杂的情况
if script1; then
echo "$0: countdown to takeoff" >&2
script2
else
echo "$0: trouble occurred" >&2
script1 --reverse --undo --apologize
script3 || make clean
echo "$0: reverted everything" >&2
fi
答案 1 :(得分:0)
您可以访问$?
中的最后一个命令退出代码。您也可以保存其输出。
#!/bin/sh
OUTPUT=`./script1.sh`
echo $?
echo $OUTPUT