对mongodb导出的.bson文件直接进行查询

982 阅读1分钟
原文链接: blog.csdn.net

如果要查询通过mongodb的mongodump导出的.bson文件(比如历史备份),是一件比较麻烦的事情。简单写了一个工具sonq,可以针对.bson文件直接进行查询。

首先可以通过pip进行安装

sudo pip install sonq

然后就可以通过sonq这个命令行工作对.bson文件进行查询了,下面举几个例子。

直接输出source.bson文件中的内容,不做过滤:

sonq source.bson

在source.bson中,查询name为'Stark'的文档:

sonq -f '{"name": "Stark"}' source.bson

在source.bson中,查询name在['Ned', 'Robb', 'Snow']中的文档:

sonq -f '{"name": {"$in": ["Ned", "Robb", "Snow"]}}' source.bson

把查询的结果输出到target.bson中:

sonq -f '{"name": "Stark"}' -o target.json source.bson

sonq的源码见 github.com/socrateslee…