从 mongo shell 读取文件
Read a file from a mongo shell
我有一个名为 wordlists 的数据库和一个名为 rockyou 的集合。
我有一个名为 rockyou 的文件,其内容为:
123456
12345
123456789
password
iloveyou
princess
1234567
rockyou
12345678
abc123
我想做的是将文件 rockyou 的所有内容加载到我的单词列表数据库中的集合 rockyou 中。我尝试搜索 google,但 mongo 的资源似乎很少。我真的可以使用一些帮助,也可以为这个对我来说新的数据库应用程序使用一些好的资源。
谢谢!
**EDIT* 以下是我使用过的命令以及我尝试过的一些命令。
use wordlists
db.createCollection("rockyou")
db.rockyou.insert(copyFile(~/wordlists/rockyou))
我尝试了一些其他的插入方法,但现在意识到还有比这更远的方法...
如果你真的只想使用 mongoshell,你可以使用 cat() command 并执行以下操作(txt 不是必需的,这就是我的文件的命名方式):
use wordlists
var file = cat('path/to/yourFile.txt'); // read the file
var words = file.split('\n'); // create an array of words
for (var i = 0, l = words.length; i < l; i++){ // for every word insert it in the collection
db.rockyou.insert({'word': words[i]});
}
这在 Mongo 3.0.1 上进行了测试并产生了如下内容:
{ "_id" : ObjectId("551491ee909f1a779b467cca"), "word" : "123456" }
{ "_id" : ObjectId("551491ee909f1a779b467ccb"), "word" : "12345" }
...
{ "_id" : ObjectId("551491ee909f1a779b467cd3"), "word" : "abc123" }
但我会在这里介绍一个应用程序逻辑(例如 python):
import pymongo
connection = pymongo.Connection()
collection = connection.wordlists.rockyou
with open('path/to/yourFile.txt') as f:
for word in f.readlines():
collection.insert({'word': word.rstrip()})
我有一个名为 wordlists 的数据库和一个名为 rockyou 的集合。
我有一个名为 rockyou 的文件,其内容为:
123456
12345
123456789
password
iloveyou
princess
1234567
rockyou
12345678
abc123
我想做的是将文件 rockyou 的所有内容加载到我的单词列表数据库中的集合 rockyou 中。我尝试搜索 google,但 mongo 的资源似乎很少。我真的可以使用一些帮助,也可以为这个对我来说新的数据库应用程序使用一些好的资源。
谢谢!
**EDIT* 以下是我使用过的命令以及我尝试过的一些命令。
use wordlists
db.createCollection("rockyou")
db.rockyou.insert(copyFile(~/wordlists/rockyou))
我尝试了一些其他的插入方法,但现在意识到还有比这更远的方法...
如果你真的只想使用 mongoshell,你可以使用 cat() command 并执行以下操作(txt 不是必需的,这就是我的文件的命名方式):
use wordlists
var file = cat('path/to/yourFile.txt'); // read the file
var words = file.split('\n'); // create an array of words
for (var i = 0, l = words.length; i < l; i++){ // for every word insert it in the collection
db.rockyou.insert({'word': words[i]});
}
这在 Mongo 3.0.1 上进行了测试并产生了如下内容:
{ "_id" : ObjectId("551491ee909f1a779b467cca"), "word" : "123456" }
{ "_id" : ObjectId("551491ee909f1a779b467ccb"), "word" : "12345" }
...
{ "_id" : ObjectId("551491ee909f1a779b467cd3"), "word" : "abc123" }
但我会在这里介绍一个应用程序逻辑(例如 python):
import pymongo
connection = pymongo.Connection()
collection = connection.wordlists.rockyou
with open('path/to/yourFile.txt') as f:
for word in f.readlines():
collection.insert({'word': word.rstrip()})