arrays - Linux 控制台中的 MongoDB 命令带有 --eval (print

标签 arrays mongodb shell command eval

我尝试在 Linux 控制台中运行命令 mongo,而不进入 mongo shell。 要做到这一点:

[root@router-mongos ~]# mongo --eval " printjson(show databases)"

但没有运行,这是输出:

MongoDB shell version: 2.6.10 connecting to: test 2015-06-10T18:33:39.834+0200 SyntaxError: Unexpected identifier

尽管如果您使用:

[root@router-mongos ~]# mongo maria --eval " printjson (db.stats())" o mongo --eval " printjson(db.adminCommand('listDatabases'))"

是的,如果在 shell 中运行它,输出是相同的。

有人用过这个吗?我们可以帮助我吗?谢谢。

最佳答案

来自Mongo Shell documentation :

You cannot use any shell helper (e.g. use <dbname>, show dbs, etc.) inside the JavaScript file because they are not valid JavaScript.

接下来,有一个表格显示了各种 shell helpers 的 JavaScript 等效项。 。由此,show dbsshow databases应替换为 db.adminCommand('listDatabases')在您的 Mongo shell 脚本中。

关于arrays - Linux 控制台中的 MongoDB 命令带有 --eval (print,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30762607/

相关文章:

php - 如何根据表头和第一行值的组合在表格单元格中放置值?

java - Array 是否创建添加的类的新对象?

mongodb - Mongo-connector 是否支持在插入 Elasticsearch 之前添加字段?

python - 在 Pyramid 中,如何从 View 中返回原始 HTML?

mysql - 需要从shell脚本连接数据库mysql(linux centos7)

linux - linux创建多个同名文件

python - 如何有效地找到 10 个最大的子数组?

arrays - Swift:从数组的结构中过滤字典键,这是可选的

javascript - Mongoose "schema method"回调不工作

c - gdb 退出而不是生成 shell