Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python或shell脚本中使用MongodbeExport_Python_Mongodb - Fatal编程技术网

如何在python或shell脚本中使用MongodbeExport

如何在python或shell脚本中使用MongodbeExport,python,mongodb,Python,Mongodb,我想通过mongodbexport从mongodb创建一个json输出 通过以下命令,它在终端中正确动作: sudo mongoexport --db mydb --collection url_db --query '{"state": "processed"}' --out /mongodb_json/name.JSON 但是如何在shell脚本或python by subprocess.call中使用它呢 我在python中使用以下代码: call(["mongoexport", "--

我想通过mongodbexport从mongodb创建一个json输出

通过以下命令,它在终端中正确动作:

sudo mongoexport --db mydb --collection url_db --query '{"state": "processed"}' --out /mongodb_json/name.JSON
但是如何在shell脚本或python by subprocess.call中使用它呢

我在python中使用以下代码:

call(["mongoexport", "--db","mydb","--collection","url_db","--query","'{\"state\": \"processed\"}'","--out ",outfile],shell=True)
但它会创建以下错误:“未指定集合!”,“将MongoDB数据导出到CSV、TSV或JSON文件。”


谢谢

如果要通过
列表
传入参数,则需要删除
shell=True
参数,否则仅使用列表的第一个元素来构造子流程调用(在这种情况下,仅调用
mongoexport

只有在将命令作为
字符串传递时,才使用
shell=True
,而不是
列表

call("mongoexport --db mydb --collection url_db --query '{\"state\": \"processed\"}' --out " + outfile, shell=True)
call("mongoexport --db mydb --collection url_db --query '{\"state\": \"processed\"}' --out " + outfile, shell=True)