mongodb打印无空格的json,即不美化的json。

24 浏览
0 Comments

mongodb打印无空格的json,即不美化的json。

我正在使用mongodb 2.2.0版本,并尝试以单行形式打印json,而不是使用printjson()find().pretty()进行"pretty"打印。也就是说,我需要以json格式列出文档,就像运行命令db.collection.find().limit(10)一样,但是我需要在javascript文件中使用游标来完成:

var cursor = db.collection.find().sort({_id:-1}).limit(10000);
while(cursor.hasNext()){
    //printNonPrettyJson(cursor.next()); //如何实现?!
}

print()无法完成工作,它只会打印一些关于对象标识符的无意义内容。

我想要这样做的原因是因为我从控制台调用javascript文件,然后将输出传递给文件,如下所示:

mongo mydatabase myjsfile.js >> /tmp/myoutput.txt

编辑:我希望输出如下所示:

> db.zips.find().limit(2)

{ "city" : "ACMAR", "loc" : [ -86.51557, 33.584132 ], "pop" : 6055, "state" : "A

L", "_id" : "35004" }

{ "city" : "ADAMSVILLE", "loc" : [ -86.959727, 33.588437 ], "pop" : 10616, "stat

e" : "AL", "_id" : "35005" }

>

而不是像下面这样:

> db.zips.find().limit(2).pretty()

{

"city" : "ACMAR",

"loc" : [

-86.51557,

33.584132

],

"pop" : 6055,

"state" : "AL",

"_id" : "35004"

}

{

"city" : "ADAMSVILLE",

"loc" : [

-86.959727,

33.588437

],

"pop" : 10616,

"state" : "AL",

"_id" : "35005"

}

>

就像所有其他方法所给出的那样。再次强调,我需要使用游标对象来实现这一点。

0