मुखपृष्ठ » कैसे » लिनक्स में फाइल्स और फोल्डर्स का पता कैसे लगाएं कमांड लाइन का उपयोग करना

    लिनक्स में फाइल्स और फोल्डर्स का पता कैसे लगाएं कमांड लाइन का उपयोग करना

    अधिकांश लोग लिनक्स में फाइलें खोजने के लिए एक ग्राफिकल फाइल मैनेजर का उपयोग करते हैं, जैसे ग्नोम में नॉटिलस, केडीई में डॉल्फिन और एक्सफस में थुनार। हालांकि, लिनक्स में फ़ाइलों को खोजने के लिए कमांड लाइन का उपयोग करने के कई तरीके हैं, इससे कोई फर्क नहीं पड़ता कि आप किस डेस्कटॉप मैनेजर का उपयोग करते हैं.

    Find कमांड का उपयोग करना

    "खोज" कमांड आपको उन फ़ाइलों की खोज करने की अनुमति देता है जिनके लिए आप अनुमानित फ़ाइल नाम जानते हैं। कमांड का सबसे सरल रूप वर्तमान निर्देशिका में फ़ाइलों की खोज करता है और इसके उपनिर्देशिकाओं के माध्यम से पुनरावृत्ति करता है जो आपूर्ति किए गए खोज मानदंडों से मेल खाते हैं। आप नाम, स्वामी, समूह, प्रकार, अनुमतियां, दिनांक और अन्य मानदंडों द्वारा फ़ाइलों की खोज कर सकते हैं.

    प्रॉम्प्ट पर निम्न कमांड टाइप करने से वर्तमान निर्देशिका में मिली सभी फाइलों को सूचीबद्ध करता है.

    खोज .

    "खोजने" के बाद डॉट वर्तमान निर्देशिका को इंगित करता है.

    विशिष्ट पैटर्न से मेल खाने वाली फ़ाइलों को खोजने के लिए, का उपयोग करें -नाम तर्क। आप फ़ाइल नाम रूपक (जैसे) का उपयोग कर सकते हैं * ), लेकिन आपको या तो एक बच चरित्र लाना चाहिए ( \ ) उनमें से प्रत्येक के सामने या उन्हें उद्धरण में संलग्न करें.

    उदाहरण के लिए, यदि हम दस्तावेज़ निर्देशिका में "प्रो" से शुरू होने वाली सभी फ़ाइलों को ढूंढना चाहते हैं, तो हम इसका उपयोग करेंगे सीडी दस्तावेज़ / दस्तावेज़ निर्देशिका में बदलने के लिए कमांड, और फिर निम्न कमांड टाइप करें:

    खोजो। -नाम समर्थक \ *

    "प्रो" से शुरू होने वाली वर्तमान निर्देशिका की सभी फाइलें सूचीबद्ध हैं.

    नोट: केस संवेदनशील होने के लिए कमांड डिफॉल्ट पाते हैं। यदि आप चाहते हैं कि शब्द या वाक्यांश की खोज असंवेदनशील हो, तो प्रयोग करें -मेरा नाम खोज आदेश के साथ विकल्प। यह केस असंवेदनशील संस्करण है -नाम आदेश.

    अगर खोज आपके मापदंड से मेल खाती कोई भी फाइल नहीं ढूंढता है, यह कोई आउटपुट नहीं देता है.

    खोज को परिष्कृत करने के लिए खोज आदेश में बहुत सारे विकल्प उपलब्ध हैं। खोज आदेश के बारे में अधिक जानकारी के लिए, चलाएँ आदमी खोजो  एक टर्मिनल विंडो में और एंटर दबाएं.

    लोकेट कमांड का उपयोग करना

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

    डेटाबेस को समय-समय पर क्रोन से अपडेट किया जाता है, लेकिन आप इसे किसी भी समय स्वयं अपडेट कर सकते हैं ताकि आप मिनट-टू-मिनट परिणाम प्राप्त कर सकें। ऐसा करने के लिए, प्रॉम्प्ट पर निम्न कमांड टाइप करें:

    सुडोल अद्यतन

    संकेत मिलने पर अपना पासवर्ड डालें.

    खोज कमांड का मूल रूप फ़ाइल सिस्टम पर सभी फाइलों को खोजता है, जो रूट पर शुरू होता है, जिसमें सभी या खोज मापदंड का कोई भी हिस्सा होता है.

    mydata का पता लगाएं

    उदाहरण के लिए, उपरोक्त कमांड में "mydata" वाली दो फाइलें और "डेटा" वाली एक फ़ाइल मिली।

    यदि आप उन सभी फ़ाइलों या निर्देशिकाओं को ढूंढना चाहते हैं जिनमें वास्तव में और केवल आपके खोज मापदंड हैं, तो उपयोग करें -ख निम्न के रूप में पता लगाने के आदेश के साथ विकल्प.

    पता लगाएं -b '\ mydata'

    उपरोक्त कमांड में बैकस्लैश एक ग्लोबिंग कैरेक्टर है, जो एक विशिष्ट फ़ाइलनाम के सेट में गैर-विशिष्ट फ़ाइल नाम में वाइल्डकार्ड वर्णों का विस्तार करने का एक तरीका प्रदान करता है। एक वाइल्डकार्ड एक प्रतीक है जिसे अभिव्यक्ति का मूल्यांकन करने पर एक या अधिक वर्णों द्वारा प्रतिस्थापित किया जा सकता है। सबसे आम वाइल्डकार्ड प्रतीक हैं प्रश्न चिह्न ( ? ), जो एक एकल चरित्र और तारांकन के लिए खड़ा है ( * ), जो पात्रों के एक सन्निहित स्ट्रिंग के लिए खड़ा है। उपरोक्त उदाहरण में, बैकस्लैश "mydata" के निहित प्रतिस्थापन को "* mydata *" द्वारा निष्क्रिय कर देता है, इसलिए आप केवल "mydata" वाले परिणामों के साथ समाप्त होते हैं।

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

    जब आप mlocate स्थापित करते हैं, तो / usr / bin / mlocate को इंगित करने के लिए बाइनरी फ़ाइल परिवर्तन का पता लगाते हैं। Mlocate को स्थापित करने के लिए, यदि यह पहले से ही आपके लिनक्स वितरण में शामिल नहीं है, तो प्रॉम्प्ट पर निम्न कमांड टाइप करें.

    sudo apt-get install एमएलओकेट

    नोट: हम आपको इस लेख में बाद में एक कमांड दिखाएंगे जो आपको यह निर्धारित करने की अनुमति देता है कि कमांड के लिए निष्पादन योग्य कहाँ स्थित है, अगर यह मौजूद है.

    Mlocate कमांड मानक डेटाबेस कमांड के समान डेटाबेस फ़ाइल का उपयोग नहीं करता है। इसलिए, आप प्रांप्ट पर निम्नलिखित कमांड टाइप करके डेटाबेस को मैन्युअल रूप से बनाना चाहते हैं:

    sudo /etc/cron.daily/mlocate

    Mlocate कमांड तब तक काम नहीं करेगा जब तक डेटाबेस मैन्युअल रूप से या जब स्क्रिप्ट क्रोन से चलाया जाता है.

    या तो पता लगाने या mlocate कमांड के बारे में अधिक जानकारी के लिए, टाइप करें आदमी ढूँढता है या आदमी  एक टर्मिनल विंडो में और एंटर दबाएं। दोनों कमांड के लिए एक ही हेल्प स्क्रीन प्रदर्शित करता है.

    किस कमांड का उपयोग करना

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

    डिफ़ॉल्ट रूप से, जो कमांड केवल पहले मिलान योग्य निष्पादन को प्रदर्शित करता है। सभी मिलान निष्पादन योग्य प्रदर्शित करने के लिए, का उपयोग करें -ए आदेश के साथ विकल्प:

    जो -एक फ़ायरफ़ॉक्स है

    आप एक साथ प्रयोग करके कई निष्पादन योग्य खोज सकते हैं, जैसा कि निम्नलिखित छवि में दिखाया गया है। केवल निष्पादन योग्य पाए जाने वाले पथ प्रदर्शित किए जाते हैं। नीचे दिए गए उदाहरण में, केवल "ps" निष्पादन योग्य पाया गया था.

    नोट: कौन सा कमांड केवल वर्तमान उपयोगकर्ता के पैठ चर को खोजता है। यदि आप एक निष्पादन योग्य की खोज करते हैं जो केवल सामान्य उपयोगकर्ता के रूप में रूट उपयोगकर्ता के लिए उपलब्ध है, तो कोई परिणाम प्रदर्शित नहीं होगा.

    किस कमांड के बारे में अधिक जानकारी के लिए, टर्मिनल विंडो में कमांड प्रॉम्प्ट पर "मैन जो" (बिना उद्धरण के) टाइप करें और एंटर दबाएं.

    व्हिसिस कमांड का उपयोग करना

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

    यदि आप केवल प्रदर्शन करने के लिए निष्पादन योग्य पथ चाहते हैं, और स्रोत और आदमी (ual) पृष्ठों के लिए पथ नहीं हैं, तो उपयोग करें -ख विकल्प। उदाहरण के लिए, कमांड Whis -b फ़ायरफ़ॉक्स ही प्रदर्शित करेगा / Usr / bin / फ़ायरफ़ॉक्स जैसा कि परिणाम है। यह आसान है क्योंकि आप प्रोग्राम की निष्पादन योग्य फ़ाइल के लिए सबसे अधिक संभावना खोजेंगे, जो आप उस प्रोग्राम के लिए स्रोत और मैन पेजों की खोज करेंगे। आप केवल स्रोत फ़ाइलों के लिए भी खोज कर सकते हैं ( -रों ) या केवल पुरुष पृष्ठों के लिए ( -मीटर ).

    जहाँ आदेश के बारे में अधिक जानकारी के लिए, टाइप करें आदमी एक टर्मिनल विंडो में और एंटर दबाएं.

    व्हिस कमांड और व्हेन कमांड के बीच अंतर को समझना

    जहां कमांड आपको बाइनरी, स्रोत और मैन पेज के लिए एक कमांड के लिए स्थान दिखाती है, जबकि कमांड जो आपको केवल कमांड के लिए बाइनरी का स्थान दिखाती है.

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

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

    क्योंकि जहां कमांड केवल कमांड में हार्ड-कोडेड पथ का उपयोग करता है, आपको हमेशा वह नहीं मिल सकता है जिसकी आप तलाश कर रहे हैं। यदि आप एक प्रोग्राम की खोज कर रहे हैं जो आपको लगता है कि एक निर्देशिका में स्थापित किया जा सकता है, जहाँ वह कमांड के लिए मैन पेज में सूचीबद्ध नहीं है, तो आप किस कमांड के साथ उपयोग करना चाहते हैं -ए पूरे सिस्टम में कमांड की सभी घटनाओं को खोजने का विकल्प.