我尝试制作 Fabric func,它检查是否安装了 Apache:
from fabric.api import *
def check_apache():
try:
result = local('httpd -v', capture=True)
except:
print "check_apache exception"
但是如果没有安装 httpd 我得到:
$ fab check_apache
Fatal error: local() encountered an error (return code 127) while executing 'ahttpd -v'
Aborting.
check_apache exception
Done.
如何获得 Fabriclocal()
方法的正确异常?因此,我需要获取异常并继续执行,而不会出现任何 Fabric 错误消息:
$ fab check_apache
check_apache exception
Done.