Poseemos la mejor respuesta que encontramos online. Nosotros queremos que te resulte de mucha ayuda y si puedes compartir alguna mejora hazlo con total libertad.
Solución:
También puede evaluar un comando usando el --eval
bandera, si se trata de un solo comando.
mongo --eval "printjson(db.serverStatus())"
Tenga en cuenta: si está utilizando operadores Mongo, comenzando con un signo $, querrá rodear el argumento eval entre comillas simples para evitar que el shell evalúe el operador como una variable de entorno:
mongo --eval 'db.mycollection.update("name":"foo",$set:"this":"that");' myDbName
De lo contrario, es posible que vea algo como esto:
mongo --eval "db.test.update("name":"foo",$set:"this":"that");"
> E QUERY SyntaxError: Unexpected token :
Ponga su secuencia de comandos mongo en un .js
expediente.
Luego ejecuta mongo < yourFile.js
Ex:
demo.js //el archivo tiene su script
use sample //db name
show collections
mantenga este archivo en "c:db-scripts"
Luego, en el indicador de cmd, vaya a "c: db-scripts"
C:db-scripts>mongo < demo.js
Esto ejecutará el código en mongo y muestra la salida.
C:db-scripts>mongo < demo.js
Mongo shell version: 3.0.4
Connecting to: test
switched to db sample
users //collection name
tasks //collection name
bye
C:db-scripts>
Esto funciona para mí en Linux:
mongo < script.js
Aquí puedes ver las reseñas y valoraciones de los lectores
Si entiendes que ha resultado provechoso este artículo, sería de mucha ayuda si lo compartes con otros juniors y nos ayudes a extender nuestra información.