2011-07-19 31 views
14

我只想針對特定的mongodb數據庫運行.js腳本,但似乎無法獲得正確的語法。指定在mongodb .js腳本中使用哪個數據庫

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

如何選擇,這將是執行上的數據庫,我試過的use foo各種組合,但沒有成功。

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

我想在這種情況下使用foo

回答

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

或者,如果你沒有一個特定的runCommand腳本,你可以這樣做:

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

如果您使用的是返回值:

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

對於文件

mongo <name of db> some_instructions.js 
+0

如何指定文件?即沒有在該命令行函數中放入一個JavaScript塊? – markdsievers

+0

上面的文件應該可以工作。文件必須以.js結尾 –

+0

謝謝Chris,非常有幫助! – markdsievers

相關問題