--eval
を使用してコマンドを評価することもできます 単一のコマンドの場合はフラグ。
mongo --eval "printjson(db.serverStatus())"
注意: $記号で始まるMongo演算子を使用している場合は、eval引数を一重引用符で囲んで、シェルが演算子を環境変数として評価しないようにする必要があります。
mongo --eval 'db.mycollection.update({"name":"foo"},{$set:{"this":"that"}});' myDbName
そうしないと、次のように表示される場合があります:
mongo --eval "db.test.update({\"name\":\"foo\"},{$set:{\"this\":\"that\"}});"
> E QUERY SyntaxError: Unexpected token :