Вы также можете оценить команду, используя флаг --eval
, если это всего лишь одна команда.
mongo --eval "printjson(db.serverStatus())"
Обратите внимание: если вы используете операторы Mongo, начиная с знака $, вам нужно окружить аргумент eval в одинарных кавычках, чтобы оболочка не оценивала оператор как переменную среды:
mongo --eval 'db.test.update({"name":"foo"},{$set:{"this":"that"}});'
В противном случае вы можете увидеть что-то вроде этого:
mongo --eval "db.test.update({\"name\":\"foo\"},{$set:{\"this\":\"that\"}});"
> E QUERY SyntaxError: Unexpected token :
Относительно Вашего второго примера спецификация JSON запрещает его :
членские данные и ошибки не ДОЛЖНЫ сосуществовать в том же документе.