【发布时间】:2015-07-01 16:33:29
【问题描述】:
我有一个记录器。我正在调用一个外部进程。我从该进程中分别捕获标准输出和标准错误,以便我可以记录它们。
我有这个错误:
Traceback(最近一次调用最后一次):文件“importData.py”,第 198 行, 在 importData(ftpServerName,ftpU,ftpP,目录,文件匹配,源,目标) 文件“importData.py”,第 99 行,在 importData p = subprocess.Popen(['mongoimport --db AutoPrivilege -c cars stockvo.json --jsonArray --upsert --drop'], stdout=subprocess.PIPE, stderr=subprocess.PIPE) 文件 "/usr/lib/python2.7/subprocess.py", 第 710 行,在 init 中 errread,errwrite)文件“/usr/lib/python2.7/subprocess.py”,第 1335 行,在 _execute_child 中 raise child_exception OSError: [Errno 2] 没有这样的文件或目录
我的脚本:
...
#import json file to MongoDB
logger.info(' Import json file to MongoDB')
#subprocess.call('mongoimport --db AutoPrivilege -c cars stockvo.json --jsonArray --upsert --drop',shell=True)
p = subprocess.Popen(["mongoimport --db AutoPrivilege -c cars stockvo.json --jsonArray --upsert --drop"], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
stdout, stderr = p.communicate()
if stdout:
logger.info(stdout)
if stderr:
logger.error(stderr)
...
有办法解决吗?
【问题讨论】:
标签: python