在Linux的bash shell中,我可以读取命令(来自文件),然后执行命令并将所有输出,错误和返回代码写入文件。我可以通过在Windows中使用python来实现这一点。
答案 0 :(得分:0)
当然可以。有很多方法可以做到这一点。
假设您有一个名为commands
的文本文件,其中包含每行的命令。你可以这样做:
subprocess
您将要使用: https://docs.python.org/2/library/subprocess.html 要么 https://docs.python.org/3/library/subprocess.html
例如:
import shlex
import subprocess
with open('commands.txt') as fin:
for command in fin:
try:
proc = subprocess.Popen(
shlex.split(command),
stderr=subprocess.STDOUT,
stdout=subprocess.PIPE
)
returncode = 0
output = proc.communicate()[0]
except subprocess.CalledProcessError as e:
returncode = e.returncode
output = e.output
with open('output.txt', 'w') as fout:
fout.write('{}, {}'.format(returncode, output))