是否可以在同一脚本中检查上一步的输出
Is it possible to check the output of previous step in the same script
脚本 运行 有两个脚本取决于第一个脚本的输出,我想选择 运行 脚本与否。例如
Mainscript.sh
./script1.sh....
有没有办法检查 script1.sh 在 mainscript.sh 中的输出?
因为如果输出两个系统之间存在连接,那么我需要 运行 第二个脚本。我可以用 python 做还是只能用 bash 做?
您可以访问 $?
中的最后一个命令退出代码。你也可以保存它的输出。
#!/bin/sh
OUTPUT=`./script1.sh`
echo $?
echo $OUTPUT
一种常见的安排是编写脚本,以便于程序化操作。具体来说,这意味着您的脚本应该 return 成功时退出代码为零,否则为非零。那么你要求的就是
的简单事情
script1 && script2
或在更复杂的情况下
if script1; then
echo "[=11=]: countdown to takeoff" >&2
script2
else
echo "[=11=]: trouble occurred" >&2
script1 --reverse --undo --apologize
script3 || make clean
echo "[=11=]: reverted everything" >&2
fi
脚本 运行 有两个脚本取决于第一个脚本的输出,我想选择 运行 脚本与否。例如
Mainscript.sh
./script1.sh....
有没有办法检查 script1.sh 在 mainscript.sh 中的输出? 因为如果输出两个系统之间存在连接,那么我需要 运行 第二个脚本。我可以用 python 做还是只能用 bash 做?
您可以访问 $?
中的最后一个命令退出代码。你也可以保存它的输出。
#!/bin/sh
OUTPUT=`./script1.sh`
echo $?
echo $OUTPUT
一种常见的安排是编写脚本,以便于程序化操作。具体来说,这意味着您的脚本应该 return 成功时退出代码为零,否则为非零。那么你要求的就是
的简单事情 script1 && script2
或在更复杂的情况下
if script1; then
echo "[=11=]: countdown to takeoff" >&2
script2
else
echo "[=11=]: trouble occurred" >&2
script1 --reverse --undo --apologize
script3 || make clean
echo "[=11=]: reverted everything" >&2
fi