Popen调用未输出到文件或在python中未正确确定参数字符串

2024-10-01 00:16:03 发布

您现在位置:Python中文网/ 问答频道 /正文

在字符串下面运行的两个Popen命令是相同的,但是当我输入在terminal中运行的整个命令时,只有第二个命令起作用。第一个我可以看到ghostscript命令在弹出时运行,尽管使用-q时它不应该运行,但据我所知,在任何地方都不会生成输出。第二种情况没有窗口弹出,但它输出到输出.pdf就像它应该的那样。你知道吗

在输入中,第一个参数是输出文件的名称,前面的任何参数都是输入pdf文件。你知道吗

有人知道发生了什么吗??你知道吗

#!/usr/bin/python
from subprocess import Popen, PIPE
import os
import sys
output = sys.argv[1]
cwd = os.getcwd()
cmd = ['gs', '-q', '-dNOPAUSE','-dBATCH', '-sDECIVE=pdfwrite', '-sOutputFile='+str(output)]
for i in range(2,len(sys.argv)): # appends all input pdfs at the end to be arguments
    cmd.append(sys.argv[i])
#a = Popen(cmd) # Done originally but didn't work either
a = Popen(' '.join(cmd), shell=True)
a.wait()
a = Popen('gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=output.pdf input1.pdf input2.pdf', shell=True)
a.wait()

Tags: 文件import命令cmdgsoutput参数pdf