Crea il tuo my_script.js file con questo comando:
db.testColl.insertOne( { a: "hello" } )
Inserisci il file di script nella directory corrente.
1. Esegui lo script JS dalla riga di comando del sistema operativo:
Dal prompt del sistema operativo, procedere come segue:
> mongo localhost/testDB my_script.js
Una volta eseguito il comando precedente, vedrai l'output come segue (simile, a seconda della versione di MongoDB e del sistema operativo (Windows, in questo caso)):
MongoDB shell version v4.2.3
connecting to: mongodb://localhost:27017/testdb?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("456b350f-668f-4389-9901-7c456e2c50fe") }
MongoDB server version: 4.2.3
Ora, da Mongo Shell (ovvero, esegui mongo , e poi dal mongo richiesta):
mongo > use testDB
mongo > show collections
Vedrai il testColl elencato.
mongo > db.testColl.find()
{ "_id" : ObjectId("5e4ea0d05816162b300b0346"), "a" : "hello" }
Questo è il documento creato nel testDB database e la raccolta testColl come da comando nel my_script.js .
2. Esegui lo script JS da Mongo Shell:
Inoltre, puoi eseguire my_script.js dall'interno della Mongo Shell .
mongo > load("my_script.js")
true
mongo > db.test.find()
{ "_id" : ObjectId("5e4ea0d05816162b300b0346"), "a" : "hello" }
{ "_id" : ObjectId("5e4ea10f276cde8fc5fedec5"), "a" : "hello" }
Vedi ci sono due documenti con _id diversi valori dei campi.
NOTA: Penso che tu possa eseguire solo alcuni comandi da .js file.
3. Un altro esempio:
Crea un file JS chiamato script2.js con il seguente contenuto:
db.test.find().forEach(printjson)
Nota il printjson il metodo shell stampa un documento nell'output della shell.
mongo > load("script2.js")
{ "_id" : ObjectId("5e4ea0d05816162b300b0346"), "a" : "hello" }
{ "_id" : ObjectId("5e4ea10f276cde8fc5fedec5"), "a" : "hello" }