我的mongo js文件中有类似下面的东西
db.eval(function(){
db.user.find( { email : {$exists : false}} ).forEach(
function(found){
id = found._id;
print(id); // this will print to mongo logs
print()将打印到mongodb日志,但我想将这些ID发送到其他位置的output.txt文件。因为我需要通过电子邮件发送此文件以便进一步处可能吗 ?感谢..
答案 0 :(得分:0)
您可以从命令行使用mongoexport
。
示例:
mongoexport -d mydatabase \
--fields _id \
--query '{ email: { $exists: false }}' \
-c user \
--csv \
--out myfile_for_further_processing.csv
有关更多选项,请查看docs。
修改强>
哦,我没有注意到你使用mongojs
。
你可以用另一种方式做到这一点:
var fs = require('fs');
db.user.find( { email : {$exists : false}}, function (err, docs) {
if (err) throw err;
var ids = docs.map(function (doc) {
return doc._id.toHexString();
});
// I assume it is not critical when using sync-version
fs.writeFileSync('output.txt', ids.join('\n'), 'utf8');
});
(代码中可能有很多错误,我只是编写了没有编辑/测试的文本。)