您可以通过使用settings
上下文管理器和以下warn_only
设置来防止中止非零退出代码:
from fabric.api import settings
with settings(warn_only=True):
result = run('pngout old.png new.png')
if result.return_code == 0:
do something
elif result.return_code == 2:
do something else
else: #print error to user
print result
raise SystemExit()
我的答案已经过时。请参阅下面的评论。