diff options
Diffstat (limited to 'wiki-to-help/executor.py')
-rw-r--r-- | wiki-to-help/executor.py | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/wiki-to-help/executor.py b/wiki-to-help/executor.py new file mode 100644 index 0000000000..464ec222e4 --- /dev/null +++ b/wiki-to-help/executor.py @@ -0,0 +1,21 @@ +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) + |