Я озадачен проблемой, с которой сталкиваюсь с монгольской оболочкой, производящей различные вариации на выходе.Командная строка mongo vs shell: разные результаты
При входе в Монго оболочки и запустить простейший из запросов, таких как:
db.database.findOne();
я получаю документ возвращается.
Когда я вызываю ту же команду через --eval опции в командной строке, я получаю другой результат: (хе-й красноломкий чувствительную информацию)
mongo -u xxx -p xxx xxxx --eval 'db.database.findOne();'
MongoDB shell version: 3.0.6
connecting to: xxxx
[object Object]
И когда я ставлю эту команду в файл и попробуйте, я вообще ничего не получаю.
mongo -u xxx-p xxx xxxx example.js
MongoDB shell version: 3.0.6
connecting to: xxxx
(я просто получить вернулся в командную строку здесь)
example.js содержит:
db.database.findOne();
Какая часть руководства оболочки Монго я пропускал, что объясняет такое поведение?
Моя цель состоит в том, чтобы иметь возможность подавать выходные данные моего запроса mongo в сценарий оболочки.
Оберните свой eval с помощью printjson() и дайте http://docs.mongodb.org/master/tutorial/write-scripts-for-the-mongo-shell/#differences-between-interactive-and -scripted-mongo a read ('printjson (db.database.findOne());') –
Это был ответ и очень полезный. Спасибо, Джеймс! Можете ли вы ввести его в качестве ответа, чтобы я мог отметить его как правильный и признать ваш вклад? –