在命令行上将JSON数据转换为BSON



我在Ubuntu系统上,我正试图编写一个测试框架,该框架必须(除其他外)比较mongodump命令的输出。这个命令生成了一堆BSON文件,我可以对它们进行比较。然而,为了便于阅读,我希望将这些转换为格式良好的JSON,这可以使用提供的bsondump命令来完成。问题是,这似乎是一种单向转换。

如果绝对需要的话,我可以解决这个问题,但如果有一种方法可以在命令行上将JSON转换回BSON,那会容易得多。有人知道有什么命令行工具可以做到这一点吗?谷歌似乎已经枯竭了。

我还没有使用过它们,但bsontools可以从json、xml或csv 转换

正如@WiredParie所指出的,从BSON到JSON的转换是有损耗的,想要回到另一种方式是没有意义的。解决方法包括使用mongoimport而不是mongorestore,或者仅使用原始BSON。查看评论以了解更多细节(添加此答案主要是为了结束问题)

您可以尝试beesn,它可以双向转换数据。对于您的变体JSON -> BSON,请使用-x开关。

示例:

$ beesn -x -i test-data/01.json -o my.bson

免责声明:我是这个工具的作者。