2011-07-19 10 views
14

Po prostu chcę uruchomić skrypt .js przeciwko konkretnej bazie danych mongodb, ale nie mogę uzyskać poprawnej składni.Określ, która baza danych ma być używana w skryptach monjsb .js

echo "print(db.address.find().limit(1));" > test.js 
mongo test.js 

Jak wybrać bazę danych, która zostanie to wykonane na, próbowałem różnych kombinacji use foo bez powodzenia.

> show dbs      
admin (empty) 
local (empty) 
foo 0.203125GB 
bar 0.203125GB 

Chciałbym użyć w tym przypadku foo.

Odpowiedz

18
mongo <name of db> --eval "db.runCommand(<js in here>);" 

Albo jeśli nie masz konkretnego skryptu RunCommand, można po prostu zrobić:

mongo <name of db> --eval "<js in here>;" 

Jeśli używasz Zwracana wartość:

mongo <name of db> --eval "db.eval('return fnName()')" 

Dla pliku

mongo <name of db> some_instructions.js 
+0

Jak mogę określić plik? tj. nie umieścić bryły javascript w tej funkcji wiersza poleceń? – markdsievers

+0

Powyższy plik powinien działać. Plik musi kończyć się .js –

+0

Dzięki Chris, bardzo pomocny! – markdsievers

Powiązane problemy