Укажите, какую базу данных использовать в mongodb.js script

Я просто хочу запустить .js script для конкретной базы данных mongodb, но не могу получить правильный синтаксис.

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 в этом случае.

Ответы

Ответ 1

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

Или, если у вас нет определенного runCommand script, вы можете просто сделать:

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

Если вы используете возвращаемое значение:

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

Для файла

mongo <name of db> some_instructions.js