4

使用 mongo v2.4.5 shell,db.col.find().pretty() 在 osx 控制台或 linux ubuntu 12.04 bash 上对我来说都不是很漂亮。

有和没有 pretty() 的输出没有差异

> db.people.find()
{ "_id" : ObjectId("520d293752cfe6ece5d3fd77"), "name" : "Andrew" }
{ "_id" : ObjectId("520e448b77803f8f15fcfedb"), "name" : "Amy" }
> 
> db.people.find().pretty()
{ "_id" : ObjectId("520d293752cfe6ece5d3fd77"), "name" : "Andrew" }
{ "_id" : ObjectId("520e448b77803f8f15fcfedb"), "name" : "Amy" }
> 

我错过了什么?(毫无疑问,一些疯狂的基本)

谢谢


更新:哦!下面回答。我没有意识到这样一个简单的文档不会被美化。嵌套文档对我来说很好。

4

2 回答 2

12

.pretty只有当您有嵌套或更大的文档时才会真正改变事情:

> db.so.insert( { name: "Derick" } );
> db.so.insert( { f: 'Derick', s: 'Rethans', t: 'derickr' } );
> db.so.insert( { name: { f: 'Derick', s: 'Rethans' } } );

> db.so.find();
{ "_id" : ObjectId("520e49a21d7b77441eaf6446"), "name" : "Derick" }
{ "_id" : ObjectId("520e49b11d7b77441eaf6447"), "name" : { "f" : "Derick", "s" : "Rethans" } }

> db.so.find().pretty();
{ "_id" : ObjectId("520e49a21d7b77441eaf6446"), "name" : "Derick" }
{
    "_id" : ObjectId("520e4f895a4563e39f06b030"),
    "f" : "Derick",
    "s" : "Rethans",
    "t" : "derickr"
}
{
    "_id" : ObjectId("520e49b11d7b77441eaf6447"),
    "name" : {
        "f" : "Derick",
        "s" : "Rethans"
    }
}

所以我认为它对你来说很好!

于 2013-08-16T15:49:06.283 回答
2

您可以将这些行添加到文件中$HOME/.mongorc.js以启用漂亮的打印。

DBQuery.prototype._prettyShell = true

或者,您可以使用以下命令以数组格式打印文档:

db.collection.find().toArray()

干杯!

于 2013-08-16T15:44:38.840 回答