我想用
subprocess.check_call(cmd)
stdin argument。到目前为止,我发现的大多数教程都会建议直接使用Popen
(例如here),但如果cmd
出错,我确实需要例外。
有关如何获得的任何提示
import subprocess
subprocess.check_call('patch -p1 < test.patch')
正常工作?
答案 0 :(得分:3)
无需运行shell,您可以将文件对象作为stdin
传递:
with open('test.patch', 'rb', 0) as file:
subprocess.check_call(['patch', '-p1'], stdin=file)
答案 1 :(得分:1)
易:
cat aaa | awk '$3=="begin_time" {print $2,$9}' |grep .
pro 3