sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvordan udfører man mongo-kommandoer gennem shell-scripts? (min virker ikke)

Opret din my_script.js fil med denne ene kommando:

db.testColl.insertOne( { a: "hello" } )

Placer scriptfilen i din nuværende mappe.


1. Kør JS Script fra OS kommandolinje:

Gør dette fra OS-prompten:

> mongo localhost/testDB my_script.js

Når ovenstående kommando er kørt, vil du se output som følger (lignende, afhængigt af din MongoDB-version og operativsystemet (Windows, i dette tilfælde)):

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


Nu fra Mongo Shell (dvs. gør mongo , og derefter fra mongo prompt):

mongo > use testDB
mongo > show collections

Du vil se testColl opført.

mongo > db.testColl.find()
{ "_id" : ObjectId("5e4ea0d05816162b300b0346"), "a" : "hello" }

Dette er dokumentet oprettet i testDB databasen og samlingen testColl i henhold til kommandoen i my_script.js .


2. Kør JS Script fra Mongo Shell:

Du kan også køre my_script.js fra Mongo Shell .

mongo > load("my_script.js")
true
mongo > db.test.find()
{ "_id" : ObjectId("5e4ea0d05816162b300b0346"), "a" : "hello" }
{ "_id" : ObjectId("5e4ea10f276cde8fc5fedec5"), "a" : "hello" }

Se, der er to dokumenter med forskellig _id feltværdier.

BEMÆRK: Jeg tror, ​​at du kun kan køre nogle kommandoer fra .js fil.


3. Et andet eksempel:

Opret en JS-fil med navnet script2.js med følgende indhold:

db.test.find().forEach(printjson)

Bemærk printjson shell-metoden udskriver et dokument til shell-outputtet.

mongo > load("script2.js")
{ "_id" : ObjectId("5e4ea0d05816162b300b0346"), "a" : "hello" }
{ "_id" : ObjectId("5e4ea10f276cde8fc5fedec5"), "a" : "hello" }


Referencer:


  1. Hvad er forskellen mellem MongoDB Atlas og MongoDB Atlas til AWS

  2. mongo db design af følgende og feeds, hvor skal jeg indlejre?

  3. Sådan laver du en forespørgsel med eller betingelse i mongoid

  4. Sådan konfigureres redis-cluster, når du bruger spring-data-redis 1.7.0.M1