Je kunt een commando ook evalueren met de --eval
vlag, als het maar een enkele opdracht is.
mongo --eval "printjson(db.serverStatus())"
Let op: als je Mongo-operatoren gebruikt, beginnend met een $-teken, moet je het argument eval tussen enkele aanhalingstekens plaatsen om te voorkomen dat de shell de operator als een omgevingsvariabele evalueert:
mongo --eval 'db.mycollection.update({"name":"foo"},{$set:{"this":"that"}});' myDbName
Anders zie je misschien zoiets als dit:
mongo --eval "db.test.update({\"name\":\"foo\"},{$set:{\"this\":\"that\"}});"
> E QUERY SyntaxError: Unexpected token :