खोज आदेश ... प्रत्येक डिस्ट्रो में बनाया गया एक खोज इंजन

नमस्ते

जिन आदेशों का मैं अक्सर उपयोग करता हूं उनमें से एक यह है: पता लगाएं

प्रत्येक डेस्कटॉप वातावरण में एक फ़ाइल ब्राउज़र होता है केडीई हम केफाइंड, जैसे अन्य वातावरणों के लिए विकल्प हैं कैटफ़िश, वगैरह। लेकिन आम तौर पर मैं बहुत व्यस्त रहता हूं और कई बार मेरे लिए उसी टर्मिनल का उपयोग करना अधिक आरामदायक होता है जो मैंने खोला है, और इसके माध्यम से किसी चीज़ की खोज करना, किसी अन्य एप्लिकेशन (खोज इंजन, आदि) को खोलने की तुलना में और खोज पैरामीटर डालें, और फिर खोजें...

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

मुख्य लाभ यह है कि स्थिति जानें यह कोई अन्य विकल्प प्रदान करता है, वह यह है कि यह तात्कालिक है, यह दर्शाता है कि हम इस समय वस्तुतः क्या खोज रहे हैं। यह कैसे संभव है? सरल... ऐसा होता है कि हमारे सिस्टम में हमारे पास हर चीज़ (या लगभग हर चीज़) का एक सूचकांक होता है जिसे हमने इसमें संग्रहीत किया है, और स्थिति जानें यह जो करता है वह उस सूचकांक को खोजता है जो हम इंगित करते हैं।

और अधिक सरलता से समझाया गया। जब हम किसी चीज को खोजते हैं जैसा कि हम आम तौर पर करते हैं, तो उस क्षण यह होता है कि सिस्टम खोजा जाता है (फ़ोल्डर दर फ़ोल्डर... फ़ाइल दर फ़ाइल) हमने क्या कहा, सही है? ...ठीक है, कल्पना कीजिए कि आपके पास आपके कंप्यूटर पर मौजूद सभी फ़ोल्डरों और फ़ाइलों की एक सूची है, और आपको बस उस सूची में देखना है कि X फ़ाइल कहाँ है। क्या अपनी हार्ड ड्राइव पर TOOOOOOODO खोजने की तुलना में कुछ एमबी की टेक्स्ट फ़ाइल खोजना आसान नहीं है? 😀

लेकिन हे... चलो व्यापार पर आते हैं हेहे।

उदाहरण के लिए मान लीजिए कि हम सभी फ़ाइलें खोजना चाहते हैं .ODT हमारे पास जो है, हम एक टर्मिनल खोलते हैं और उसमें हम निम्नलिखित लिखते हैं और दबाते हैं [दर्ज]:

locate -e *.odt

El -e मैंने इसे यह निर्दिष्ट करने के लिए रखा है कि यह उन फ़ाइलों की तलाश करता है जो अभी भी मौजूद हैं, क्योंकि जिस सूचकांक के साथ यह काम करता है स्थिति जानें कई बार इसमें हटाई गई फ़ाइलों की जानकारी होती है, और जो फ़ाइलें अब मौजूद नहीं हैं उन्हें हमें दिखाने का कोई मतलब नहीं है, है ना? 🙂

वही, अब मैं अपने लैपटॉप में वह सब कुछ खोजूंगा जो नाम में है।इतना»... हम निम्नलिखित डालते हैं:

locate -e asa

क्या आपने गति पर ध्यान दिया? …बहुत बढ़िया 🙂

एक जिज्ञासु तथ्य के रूप में, लोकेट द्वारा उपयोग किया जाने वाला डेटाबेस (सूचकांक) है: /var/lib/mlocate/mlocate.db

और ठीक है यह सब है, कमांड आज़माएं और मुझे बताएं कि क्या हो रहा है हाहा।

सादर


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।

  1.   घनाकार कहा

    एक टिप, अपडेटेडबी कमांड के साथ यह डेटाबेस अपडेट किया जाता है।

    1.    घेराबंदी२०९९ कहा

      मैं बस यह पूछने जा रहा था कि उस डेटाबेस को कैसे अद्यतन किया जाए।

    2.    KZKG ^ गारा कहा

      बढ़िया 😀... एक और छोटी सी चीज़ जो मैंने सीखी हेहेहेहे।
      अरे, एक विवरण... क्या आप सीधे ब्लॉग पर लिखना नहीं चाहेंगे? मैं जानता हूं कि कनेक्शन वगैरह में क्या समस्याएं हैं, यही कारण है कि इसे ईमेल या कुछ इस तरह से प्रकाशित करने के लिए कॉन्फ़िगर किया जा सकता है 😉

  2.   रगर्टक्स कहा

    बहुत अच्छा। मेरे मामले में, डेटाबेस उस निर्देशिका में या उस नाम के साथ नहीं है, लेकिन "लोकेट लोकेट" के साथ सब कुछ ठीक हो गया है: /var/lib/locatedb

    1.    KZKG ^ गारा कहा

      HAHAHA पता लगाओ पता लगाओ …बहुत बढ़िया हाहा 😀

  3.   डेविडएलजी कहा

    उसने मुझसे कहा

    बैश: पता लगाएं: कमांड नहीं मिला

    1.    उचित कहा

      इसे जड़ के रूप में मानता है, हालाँकि ऐसा नहीं होना चाहिए।

    2.    रगर्टक्स कहा

      आपको इसे इंस्टॉल करना पड़ सकता है.

    3.    KZKG ^ गारा कहा

      कोशिश करो /usr/bin/locateasd आइए देखें कि यह आपको क्या बताता है 🙂 ... यदि यह काम नहीं करता है, तो जांचें कि आपके पास mlocate पैकेज स्थापित है, जो अजीब है... क्योंकि मैंने उबंटू, डेबियन और आर्क का उपयोग किया है और यह कमांड डिफ़ॉल्ट रूप से स्थापित है उन सभी को।

      1.    डेविडएलजी कहा

        पुनः स्थापित करने के बाद

        [david@arch ~]$ usr/bin/locate asd
        बैश: usr/bin/locate: ऐसी कोई फ़ाइल या निर्देशिका नहीं
        [david@arch ~]$ पता लगाएं पता लगाएं
        पता लगाएं: stat() निष्पादित नहीं कर सका `/var/lib/mlocate/mlocate.db': ऐसी कोई फ़ाइल या निर्देशिका नहीं

  4.   रेयोनेंट कहा

    उत्कृष्ट कमांड, मुझे यह नहीं पता था, और यदि गति प्रभावशाली है!! और ए man locate बाकी मुझे समझाएं, बहुत-बहुत धन्यवाद

    1.    KZKG ^ गारा कहा

      आपका स्वागत है, ख़ुशी की बात है 😀

  5.   तारेगना कहा

    हम्म... खोजने से बेहतर? आपको स्पीड टेस्ट ओओ करना चाहिए

    मेरे मामले में मैं वही खोजें कर सकता था, लेकिन इस तरह:

    $ खोज /home/user -iname "*.odt"
    $
    खोज /home/user -iname "*asa*"

    यदि आप कुछ फ़ाइलें ढूंढना और उनका आकार जानना चाहते हैं:

    $ ढूंढें -iname "*.iso" -exec du -h {} \;

    हालाँकि, वास्तव में, साथ भी ls मैं वर्तमान निर्देशिका में खोज करता हूं, यानी अगर मुझे पता हो कि फ़ाइल कहां स्थित हो सकती है:

    ओमेगा@मेगा-लैपटॉप ~/छवियां $ ls *.png

    1.    तारेगना कहा

      उफ़, क्षमा करें, मुझे आवश्यकता से अधिक ब्लैक आउट कर दिया गया 😐

      1.    KZKG ^ गारा कहा

        नहीं, चिंता मत करो, अगर तुम चाहो तो मैं इसे ठीक कर दूंगा 🙂

    2.    KZKG ^ गारा कहा

      जिस क्षण आप इसे चलाते हैं, उसी समय खोज करता है, जबकि लोकेट पहले ही खोज कर चुका होता है और बहुत समय पहले एक सूची तैयार कर चुका होता है... और जब आप इसे चलाते हैं, तो यह जो करता है वह यह खोजता है कि आपने फ़ाइल में एक पैरामीटर के रूप में क्या सेट किया है। कुछ एमबी या केबी 😀

      1.    तारेगना कहा

        आह, तुलना के लिए धन्यवाद। हेहे, जवाब देने में थोड़ी देर हो गई लेकिन काम में मैं व्यस्त हूं 🙂

        ऐसा कहने से मुझे खोजों को तेज़ करते समय विंडोज़ "इंडेक्स सर्वर" की याद आती है।

        1.    KZKG ^ गारा कहा

          यह मुझे केडीई सिमेंटिक डेस्कटॉप खोजों (विशेष रूप से नेपोमुक) की याद दिलाता है

          1.    तारेगना कहा

            दिलचस्प बात यह है कि मैं सूक्ति प्रकार का हूं इसलिए मुझे केडीई के बारे में यह नहीं पता था :ओ

  6.   एक प्रकार का नेवला कहा

    किसी ने मेरी मदद की..मैंने अद्यतन करने का प्रयास किया और मुझे अद्यतन मिला: `/var/lib/mlocate/mlocate.db' के लिए एक अस्थायी फ़ाइल नहीं खोल सकता
    दूसरी ओर, मैंने लोकेट लोकेट का उपयोग किया है (मुझे यह पसंद आया) और यदि यह उपरोक्त फ़ाइल को लोकेट करता है...
    वे मेरी जगह क्या करेंगे? कृपया शुरुआती लोगों के लिए एक भाषा में... और मुझे आशा है कि इसे अद्यतन किया जाता रहेगा