Python subprocess.call标准输出失败
我有下面的python代码,但无论我使用什么选项组合,它都不会记录到文件中-它会一直记录到终端。。。日志文件为空,其中没有任何内容。我哪里做错了 我尝试过许多传递不同参数的子流程函数,但都没有太多运气Python subprocess.call标准输出失败,python,subprocess,Python,Subprocess,我有下面的python代码,但无论我使用什么选项组合,它都不会记录到文件中-它会一直记录到终端。。。日志文件为空,其中没有任何内容。我哪里做错了 我尝试过许多传递不同参数的子流程函数,但都没有太多运气 import subprocess logfile = open("runlog.txt", "w"); subprocess.call("rm -rf /opt/playlistscraper/downloaded/*.json", stdout=logfile, shell=True);
import subprocess
logfile = open("runlog.txt", "w");
subprocess.call("rm -rf /opt/playlistscraper/downloaded/*.json", stdout=logfile, shell=True);
subprocess.call("scrapy crawl radio1 -o/opt/playlistscraper/downloaded/radio1.json", stdout=logfile, shell=True);
它正在登录到stderr吗?是的。谢谢你的建议。我对stdout和stderr了解不多,所以在你的建议之后,在这两个网站上快速搜索一下就可以了!:)您根本不需要子进程,如果您使用它,您应该传递一个参数列表,而不使用shell=True,并且通常也使用
check\u call
,这取决于子进程,仅将stdout
,stderr
重定向到文件可能不够;你可能需要一个