2015-06-10 46 views
0

我是SOLR的新手,所以如果我缺少一些基本的東西,請原諒。SOLR POST文件沒有擴展

我正在使用SOLR 5,我想掃描沒有擴展名的文檔。不幸的是,在我的情況下,將文件更改爲具有擴展名不是一種選擇。

我使用的命令很簡單:

$bin/post -c mycore ../foldertobescaned -type application/pdf 

命令工作正常,確實具有擴展名的文檔,但我得到:

進入自動模式。文件被認爲是XML,JSON,CSV,PDF,DOC,DOCX,PPT,PPTX,XLS,XLSX,ODT,ODP,消耗臭氧層物質,OTT,OTP,OTS,RTF,HTM,HTML,TXT,登錄

結局

非常感謝!

回答

0

如果重命名文件不是選項,則可以使用以下腳本作爲解決方法,直到Solr改進其後處理方法。這是一個簡單的循環bash,它可以單獨提交每個文件,並且不管文件擴展名是如何工作的。請注意,此腳本比在整個文件夾中使用post要慢,因爲每個單獨的文件傳輸都需要初始化。

保存下面爲postFolderToSolr.sh您Solr的文件夾中(這樣Solrs bin/文件夾是一個子目錄),使其可執行與chmod +x postFolderToSolr.sh,然後按如下方式使用它的腳本:./postFolderToSolr.sh mycore /home/user1/foldertobescaned/ application/pdf

使用任何參數或錯號碼的參數打印一條簡短的用法消息作爲幫助。

#!/bin/bash 
set -o nounset 

if [ "$#" -ne 3 ] 
then 
echo "Post contents of a folder to Solr." 
echo 
echo "Usage: postFolderToSolr.sh <colletionName> </path/to/folder> <MIME>" 
echo 
exit 1 
fi 

collection=$1 
inputPath=${2%/} # remove suffix/if it exists 
mime=$3 

for element in $inputPath"/"*; do 
    bin/post -c $collection -type $mime $element 
done