提问者:小点点

语法错误:将MongoDB查询输出到文本文件时,语句前缺少l


我对MongoDB只有1天大,所以请耐心等待。我只是试图将一个简单的查询输出到*. json文件。查询是:

db.集合. findOne()//集合被替换为正确的集合名称,查询前奏'use db'命令,其中db被替换为正确的db名称

然后,参考这篇文章和一堆其他SO的答案,我执行以下查询:

--eval "printjson(db.results.findOne())" >> sample.json

我什至创建了一个空白的sample. json文件,并用-val等试验了--val。我不断得到:

语法错误:缺失;在语句(shell)之前:1

我在任意位置添加分号,但我不知道为什么这对我不起作用。

有人能指出我错过了什么吗?

完整的命令序列:

mongo
use dbname
--eval "printjson(db.collectionName.findOne())" >> sample.json

P. S:命令db.ColltionName.findOne()确实给了我一个输出


共1个答案

匿名用户

--val应该作为参数传递给“mongo”命令。我在下面尝试过,它起作用了:

C:\>mongo localhost:27017/dbname --eval "printjson(db.results.findOne())" >> sample.json