Python中执行外部命令并捕获双向输出

版权声明 本站原创文章 由 萌叔 发表 转载请注明 萌叔 | http://vearne.cc import subprocess # print ’popen3:’ def external_cmd(cmd, msg_in=''): try: proc = subprocess.Popen(cmd, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE,) stdout_value, stderr_value = proc.communicate(msg_in) return stdout_value, stderr_value except ValueError, err: # log("IOError: %s" % err) return None, None if __name__ == '__main__': stdout_val, stderr_val = external_cmd('ls -l') print 'Standard Output: %s' % stdout_val print 'Standard Error: %s' % stderr_val

January 2, 2018 · 1 min