import subprocess, os
class Executor(object):
def __init__(self,showErr=True,showOutput=True,showCmd=False):
self.showCmd=showCmd
if showErr: self.stderr = None
else: self.stderr=open(os.devnull,"w")
if showOutput: self.stdout = None
else: self.stdout=open(os.devnull,"w")
def __call__(self,*cmd):
"""
Execute a program, e.g. Executor()("/bin/ls","/home")
@cmd Command, args
@return boolean True if succeed
"""
if self.showCmd:
print cmd
return (subprocess.Popen(list(cmd),stderr=self.stderr,
stdout=self.stdout).wait() == 0)
'/>
LibreOffice 核心代码仓库 | 文档基金会 |