====== 整形スクリプト ====== ====== dot.mongorc.js ====== 標準関数printjson()をp()で実現 DBQuery.prototype.p = function() { var args = arguments this.forEach(function(e) { var result = {} if(args.length == 0) { result = e } else { for(var i = 0; i < args.length; i++) { var target = e var keys = args[i].split('.') var flag = true keys.forEach(function(key) { if(key in target) { target = target[key] } else { flag = false return } }) if(!flag) { target = '(undefined)' } if(args.length == 1) { result = target } else { result[[args[i]]] = target } } } printjson(result) }) } ====== ====== # vi /data/dot.mongorc.js ~ # mongo /data/dot.mongorc.js --shell > db.testdata.find({entryId: {$lt: 3}}).p() { "_id" : ObjectId("5109be7579ee8df58e8feca6"), "entryId" : 1, "createdDatetime" : ISODate("2013-01-31T00:44:37.080Z"), "name" : "test01" } { "_id" : ObjectId("5109be7579ee8df58e8feca7"), "entryId" : 2, "createdDatetime" : ISODate("2013-01-31T00:44:37.080Z"), "name" : "test02" } Key指定も可能 > db.testdata.find({entryId: {$lt: 3}}).p('entryId') 1 2 >