Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Indexing 如何使用solr索引单个目录中包含的大量文件?_Indexing_Solr_Lucene - Fatal编程技术网

Indexing 如何使用solr索引单个目录中包含的大量文件?

Indexing 如何使用solr索引单个目录中包含的大量文件?,indexing,solr,lucene,Indexing,Solr,Lucene,我在一个目录中有大量纯文本文件。我想使用solr对它们进行索引。我使用了其他来源中提到的以下命令: java-Dc=test-Drecursive-Dauto-jar post.jar文件夹 但它索引了0个文件。如果我有更少的文件,那么下面的工作: java-Dc=test-Drecursive-Dauto-jar post.jar文件夹/* 但如果文件数量很大,我会出现以下错误: 参数列表太长 请注意,我正在ubuntu中运行该命令。命令行对参数的数量有限制,您可以通过执行getconf AR

我在一个目录中有大量纯文本文件。我想使用solr对它们进行索引。我使用了其他来源中提到的以下命令:

java-Dc=test-Drecursive-Dauto-jar post.jar文件夹

但它索引了0个文件。如果我有更少的文件,那么下面的工作:

java-Dc=test-Drecursive-Dauto-jar post.jar文件夹/*

但如果文件数量很大,我会出现以下错误:

参数列表太长


请注意,我正在ubuntu中运行该命令。

命令行对参数的数量有限制,您可以通过执行
getconf ARG_MAX

所以,文件的数量超过了这个限制,这就是为什么会出现这个错误的原因。您应该使用
xargs
来克服此限制

用法示例如下(您需要根据您的命令进行调整):


您是否只使用命令行编制索引?为了避免多次启动
post.jar
的开销,
-n
参数会有所帮助。类似于
find folder/-iname“*.xml”-print0 | xargs-0-n100 java-Dc=test-Drecursive-Dauto-jar post.jar的东西应该可以工作。
find . -name \*xml | xargs java -jar post.jar