कमांड-लाइन-फ्रेंडली पूर्ण-पाठ अनुक्रमण?


37

क्या एक पूर्ण-पाठ अनुक्रमण इंजन के रूप में ऐसी कोई चीज है, जिसे कमांड लाइन से क्वेर किया जा सकता है और आदर्श रूप से एक गुई का उपयोग करने की आवश्यकता नहीं होगी?

मैं विशेष रूप से अपने ई-बुक्स और पेपर्स को इंडेक्स करने में दिलचस्पी रखता हूं, ताकि पीडीएफ, एपब और कुछ डीजेवू का मिश्रण हो। (ओपन) कार्यालय डॉक्स अच्छा होगा, लेकिन मेरी सूची में बहुत कम है।


1
क्या आप इस बारे में अधिक विशिष्ट हो सकते हैं कि सूचकांक क्या प्रारूप लेता है?
ixtmixilix

अच्छी बात है, संपादित।
जुलिएन

-1 जैसा कि ल्यूसिने या ट्रैकर के नीचे बताया गया है अच्छे विकल्प हैं, लेकिन "gtk, या इससे भी बदतर qt" का आपकी समस्या क्या है? सिर्फ कमांड लाइन का उपयोग करना ठीक है, लेकिन मुझे पुस्तकालयों के एक सेट की आलोचना करने की बात नहीं
दिखती

2
@tmow: बिंदु लिया गया, प्रश्न संपादित किया गया। किसी की मेहनत को कम आंकने का मतलब नहीं था, माफ करना, अगर ऐसा है तो यह कैसे हुआ ...
julien

जवाबों:


11

क्या आपने ल्यूसिन या स्फिंक्स को देखा है? हालांकि आपको शुरू में उन दस्तावेजों को पार्स करने की आवश्यकता होगी जिन्हें आप एक बार इंडेक्स करना चाहते हैं, या तो कोई क्ली से खोज सकता है।

Lucene के लिए, यह उपलब्ध करने के बारे में कुछ जानकारी है

स्फिंक्स, थोड़ा अधिक अस्पष्ट है, लेकिन कुछ दस्तावेज भी उपलब्ध हैं । आप अपनी पसंद के संरचित XML डेटा को xmlpipe2 डेटा स्रोत के माध्यम से स्फिंक्स में पास कर सकते हैं।

ल्यूसिन जावा पर निर्भर करता है, जबकि स्फिंक्स C ++ में बनाया गया है, जिसमें बाहर की निर्भरता की आवश्यकता नहीं है।

या तो आप जो चाहते हैं उसे करने के लिए थोड़ा काम करने की आवश्यकता है, लेकिन, पूरी तरह से काम करने योग्य समाधान की तरह लगता है।


1
एक तरफ के रूप में, यदि आप एक DB (postrgres, mysql) में डेटा इंडेक्स करना चाहते हैं, तो इनमें से कोई भी अविश्वसनीय रूप से अच्छी तरह से है।
गाबे

हम्म, मैंने बहुत कम स्तर होने के लिए स्फिंक्स को खारिज कर दिया था, लेकिन xmlpipe2 को देखते हुए ऐसा लगता है कि pdf2txt के लिए एक आवरण स्क्रिप्ट या बहुत आसान होगा ...
julien

ल्यूसीन में उल्लेख के लिए +1। मैं ल्यूसिन के साथ अच्छा समय था, यह एक हत्यारा सामान है !!
निखिल मुल्ले

मेरा मानना ​​है कि इलास्टिक्स खोज ल्यूसिन पर आधारित है, और उपयोग करने के लिए अधिक सुविधाजनक हो सकती है (उच्च-स्तरीय चीज होने के नाते)।
offby1

5

xapian की जाँच करें । इसमें कमांड लाइन इंटरफ़ेस है और बहुत सारे प्रारूपों को अनुक्रमित कर सकता है।


xapian एक महान सूचकांक है, मेरा व्यक्तिगत पसंदीदा है, और यह मूल C ++ में लिखा गया है। कुछ जो xapian का उपयोग करता है सबसे अधिक आदर्श होगा, कई परियोजनाओं के लिए अनुक्रमण +1 की आवश्यकता होती है।
जेएम बेकर


3

ट्रैकर को कमांड लाइन से मंगवाया जा सकता है और एक प्रोजेक्ट के लिए gtk + एक कठिन निर्भरता नहीं है (लेकिन पैकेज के लिए हो सकता है)।


अगर मैं गलत नहीं हूँ, तो यह अभी भी (निर्भरता के रूप में) के बड़े हिस्सों को खींचने की कोशिश करूँगा।
जूलियन

1
जैसा कि मैंने कहा - परियोजना (संस्करण 0.9.x में कम से कम केवल गनोम कठिन निर्भरता glib है)। संकुल जीयूआई जैसे साने-डिफॉल्ट कर्मचारियों को संकलित कर सकता है ताकि आपको इसे हाथ से संकलित करने की आवश्यकता हो।
मैकीज पीचोटका

3

इस उत्तर गूगल के उपयोग करने की सलाह codesearch ,

कोड खोज, अनुक्रमण के लिए एक उपकरण है और फिर स्रोत कोड के बड़े निकायों पर नियमित अभिव्यक्ति खोज करता है।

डेबियन / डेरिवेटिव पर सुपरसर्स कोशिश कर सकते हैं: sudo apt-get install codesearch


1
इस उत्तर में स्रोत से स्थापित करने पर कुछ विवरण हैं; यदि यह आपके OS के लिए
रिपोज

2

वर्तमान में ट्रैकर की दो धाराएँ हैं, स्थिर (0.8) और अस्थिर (0.9)। आपके OS की संभावना 0.8 संस्करण है, इसलिए यदि आप इसे बर्दाश्त कर सकते हैं (इसमें कुछ ब्लीडिंग एज सॉफ़्टवेयर निर्भरताएँ हैं), तो लेटेस्ट टारफाइल (0.9.x) ले जाएँ। इसमें 0.8 से अधिक सुधार हुए हैं, और वर्तमान में 0.10 (यहां तक ​​कि संख्या स्थिरता का प्रतिनिधित्व करती है) के क्रम में आगे स्थिर किया जा रहा है । यदि आप इस मार्ग पर जाना चुनते हैं, तो कॉन्फ़िगर करने के लिए इस कमांड का उपयोग करें:

./configure --disable-tracker-needle --disable-tracker-preferences --disable-tracker-explorer --disable-tracker-status-icon

संभवतः आपके पास निर्भरताएं स्थापित होने वाली नहीं हैं, इसलिए यह केवल अपने डिस्ट्रो से 0.8 स्थापित करने के लिए और बस जीयूआई बिट्स से बचने के लिए बचना चाहिए। डेबियन स्क्वीज़, उबंटू 10.10, और उबंटू 11.04 पर, ये अच्छी तरह से विभाजित हैं। तो ( रूट के रूप में ) रन:

apt-get install --no-install-recommends tracker-utils tracker-miner-fs

इसके लिए सीएलआई उपकरण है tracker-search, इसलिए इसे --helpविकल्प के साथ चलाकर देखें कि इसका लाभ कैसे लिया जाए :-)

नोट :

  • फेडोरा 14 पर, ट्रैकर पैकेज की GTK + पर निर्भरता है। मुझे लगता है कि यह है क्योंकि इसमें जैसी चीजें शामिल हैं tracker-appletऔर tracker-preferences। हालांकि tracker-search-tool, उनके पास GUI खोज इंटरफ़ेस के लिए एक अलग पैकेज है।
  • DjVu और ePUB समर्थित नहीं हैं (अभी तक)। यहाँ क्या है की एक सूची है

0

मैंने Sqlite3 का उपयोग करके इस गर्मियों में NetBSD के लिए मैन पेजों को अनुक्रमित करने और खोजने के लिए एक पूर्ण पाठ खोज टूल (एक नया एप्रोपोस) लिखने पर काम किया। इसमें दो कमांड लाइन उपकरण शामिल हैं:

  • makemandb: जो पार्स करता है और मैन पेजों की सामग्री का एक सूचकांक बनाता है।
  • एप्रोपोस: इस सूचकांक को क्वेरी करने के लिए उपकरण।

आप आसानी से अपने लिए एक समान उपकरण लिख सकते हैं, पीडीएफ के लिए आपको पीडीएफ दस्तावेजों को पार्स करने के लिए एक पुस्तकालय की आवश्यकता होगी और इसी तरह खुले कार्यालय के दस्तावेजों को पार्स करने के लिए एक उपयोगिता।

आप यहां परियोजना के बारे में अधिक पढ़ सकते हैं

कोड यहाँ है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.