<p>我可以让它工作如下:</p>
<pre><code>#!/bin/sh
test="$(python3 test.py)"
echo "Waiting for python script to execute"
if [ "${test}" = "status=done" ]; then
echo Job 1 exited with status $?
echo "node-red"
else
test="$(python3 test.py)"
while [ "$test" != "status=done" ]
do
test="$(python3 test.py)"
done
echo "Waiting for python script to execute"
if [ "${test}" = "status=done" ]; then
echo Job 1 exited with status $?
echo "node-red"
fi
fi
</code></pre>
<p>要模拟不同的输出,我的python文件如下所示:</p>
<pre><code>import random
status = ['done', 'wip', 'clarify']
print(f'status={random.choice(status)}')
</code></pre>
<p>这是我得到的输出:</p>
<pre><code>/tmp$ ./script.sh
Waiting for python script to execute
Job 1 exited with status 0
node-red
/tmp$ ./script.sh
Waiting for python script to execute
Job 1 exited with status 0
node-red
/tmp$ ./script.sh
Waiting for python script to execute
Waiting for python script to execute
Waiting for python script to execute
Job 1 exited with status 0
node-red
/tmp$ ./script.sh
Waiting for python script to execute
Job 1 exited with status 0
node-red
</code></pre>
<p>编辑:改进的循环</p>