有没有办法告诉Mongo漂亮的打印输出? 当前,所有内容都输出到一行,并且很难读取,特别是对于嵌套数组和文档。
#1楼
你可以加
DBQuery.prototype._prettyShell = true
到$HOME/.mongorc.js
文件,以默认情况下全局启用漂亮打印。
#2楼
由于它基本上是一个JavaScript Shell,因此您也可以使用toArray()
:
db.collection.find().toArray()
但是,这将打印出collection的所有文档,这与允许您进行迭代的pretty()
不同。 请参阅: http : //docs.mongodb.org/manual/reference/method/cursor.toArray/
#3楼
哦,所以我猜.pretty()等于:
db.collection.find().forEach(printjson);
#4楼
(注意:这是对最新问题的回答)
您可以在CLI上执行此操作:
echo DBQuery.prototype._prettyShell = true >> ~/.mongorc.js
而且它总是会输出漂亮的结果。
#5楼
尝试一下Mongo-hacker(节点模块),它总是可以打印漂亮的。 https://github.com/TylerBrock/mongo-hacker
更多它增强了mongo shell(仅支持ver> 2.4,当前ver是3.0),例如
- 显色
- 其他Shell命令(计算文档/计算文档/等)
- API添加(db.collection.find({...})。last(),db.collection.find({...})。reverse()等)
- 汇总框架
我在生产环境中使用了一段时间,还没有问题。
#6楼
看一下这个:
db.collection.find().pretty()
#7楼
遇到了问题,但不知道如何从外部加载的mongo中打印它。 所以:
这适用于控制台:并在控制台中优先使用,但不适用于外部mongo加载的javascript:
db.quizes.find().pretty()
这在外部mongo加载的javscript中起作用:
db.quizes.find().forEach(printjson)
#8楼
( 注意:这是该问题的原始版本的答案,该版本没有“默认”要求 )
您可以要求它漂亮。
db.collection.find().pretty()