mongodb mongoimport动态从外部文件

问题描述:

我可以从命令行运行mongoimport,并获取它来导入文件,如果我硬编码的文件名。 mongoimport --host HOSTNAMEHERE --collection TESTColectionName --db DBNAME --file C:\ FileFolder1 \ 129871.json --jsonArraymongodb mongoimport动态从外部文件

上述工作不错,但我有一个文件夹有数百of.json文件(即我不知道名字)。如何遍历目录中的所有文件并将它们导入到mongodb中?

我写了几个.js文件来运行mongo命令(查找数据,显示数据,打印数据等)。无论如何,我可以迭代并从这里运行导入(我知道mongoimport是mongo shell本身的一个单独的.exe文件)。

让我知道, 谢谢

+0

为什么不写一个shell脚本或批处理文件?或者您可以使用节点编写一个小脚本并使用'fs'遍历文件并执行shell命令。 – 2014-10-03 19:16:58

+0

对不起,如果这不明确,但那是我想要做的是编写一个shell脚本。 – Brad 2014-10-06 12:22:05

一个样本shell脚本迭代(基于Unix)

ls -1 *.json | sed 's/.json$//' | while read col; do 
mongoimport -d db_name -c $col < $col.json; 
done 

基于Windows的提示

此列出的所有文件(而且只有这些文件)在当前目录中:

for /r %i in (*) do echo %i 

此外,如果您运行该命令在批处理文件中需要加倍%符号。

for /r %%i in (*) do echo %%i 
+0

看起来不错,有一点是我从Windows上运行。 – Brad 2014-10-13 17:49:33

+0

它适合你吗? – 2015-03-30 21:25:41