我有两个Python脚本a.py和b.py,我想编写一个bash脚本,在a.py完成其操作之前加载a.py而不运行b.py。
#!/usr/bin/env bash
python a.py
python b.py
但这太幼稚了,我要检查a.py是否完成...我该怎么做?
默认情况下,这些命令将自动顺序执行。
要检查运行python b.py
的必要条件之一python a.py
已成功完成,您可以执行以下操作:
#!/usr/bin/env bash
python a.py && python b.py
相反,尝试运行python a.py
,仅当python a.py
未成功终止时才运行'python b.py':#!/usr/bin/env bash
python a.py || python b.py
同时作为后台进程运行它们的方法是:#!/usr/bin/env bash
python a.py &
python b.py &
(回复评论)-您可以将此链接用于连续执行多个命令,例如:python a.py && python b.py && python c.py && python d.py
code
python a.py && python b.py && python c.py code
还是要再单独写一行c.py?先是code
python a.py && python b.pycode
然后是code
python b.py && python c.pycode
。 - StudentOfSciencepython a.py && b.py
,能否展示一下你的脚本长什么样子,以及你是如何调用它的? - sampson-chenx = ser.readline() print "got '" + x + "'"
,所以如果收到AT+OK,则调用b.py。 - marciokokoparent.py
、child1.py
、child2.py
和reunion.py
,我想让parent.py
先运行,然后同时运行child1.py
和child2.py
,最后如果child1.py
和child2.py
都成功运行,则运行reunion.py
。 - Jason Goalprompt_err() {
echo -e "\E[31m[ERROR]\E[m"
}
prompt_ok() {
echo -e "\E[32m[OK]\E[m"
}
状态() {
如果 [ $1 -eq 0 ]; 然后
提示_成功
否则
提示_错误
退出 -1
结束
}
a.py
状态
b.py
您可以使用上面的检查代码。
如果仅完成'a.py',则会处理'b.py',否则将以“错误”退出。
python a.py&
。 - Morten Jensen