Sie können einen Befehl auch mit --eval
auswerten Flag, wenn es nur ein einzelner Befehl ist.
mongo --eval "printjson(db.serverStatus())"
Bitte beachten: Wenn Sie Mongo-Operatoren verwenden und mit einem $-Zeichen beginnen, sollten Sie das eval-Argument in einfache Anführungszeichen setzen, um zu verhindern, dass die Shell den Operator als Umgebungsvariable auswertet:
mongo --eval 'db.mycollection.update({"name":"foo"},{$set:{"this":"that"}});' myDbName
Andernfalls sehen Sie möglicherweise Folgendes:
mongo --eval "db.test.update({\"name\":\"foo\"},{$set:{\"this\":\"that\"}});"
> E QUERY SyntaxError: Unexpected token :