2011-07-19 14 views
14

Sadece belirli bir mongodb veritabanına karşı bir .js komut dosyasını çalıştırmak istiyorum, ancak doğru sözdizimini elde edemiyorum. Bu konuda yürütülen olacağını veritabanını seçmek yapmak nasılHangi veritabanını mongodb .js betiğinde kullanacağını belirtin

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

, hiçbir başarı ile use foo çeşitli kombinasyonlarını denedim.

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

Bu durumda foo kullanmak istiyorum. Belirli bir KomutÇalıştır komut yok eğer

cevap

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

Ya da tıpkı yapabilirsiniz:

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

bir dönüş değeri kullanıyorsanız: Bir dosya

için

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

mongo <name of db> some_instructions.js 
+0

Bir dosyayı nasıl belirleyebilirim? Yani bu komut satırı işlevinde javascript bir yumru koymak değil mi? – markdsievers

+0

Yukarıdaki dosya için çalışmalıdır. Dosya ile bitmelidir. –

+0

Teşekkürler Chris, çok yararlı! – markdsievers

İlgili konular