Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रणाली >> Linux

लिनक्स और macOS में fd का उपयोग करके फ़ाइलों को तेजी से कैसे खोजें

fd, find कमांड का एक सरल विकल्प है। यह आपके टाइप किए गए कमांड को छोटा और मुद्दे पर रखने के लिए एक छोटे सिंटैक्स और संक्षिप्त कमांड संरचना का उपयोग करता है। हालांकि, वह वर्बोसिटी की कमी जो fd को टाइप करना आसान बनाती है, इसे समझना अधिक कठिन बना देती है। fd डिफ़ॉल्ट find कमांड की तुलना में पैटर्न-मैचिंग को अधिक तेजी से चलाता है। लिनक्स और macOS पर fd का उपयोग करना सीखें।

लिनक्स पर fd इंस्टॉल करें

fd कई सिस्टम पर डिफ़ॉल्ट रूप से नहीं आता है। आपको अपने पसंदीदा पैकेज मैनेजर का उपयोग करके एप्लिकेशन को डाउनलोड और इंस्टॉल करना होगा, और फिर आप इसे टर्मिनल के भीतर से चला सकते हैं।

उबंटू

यह उबंटू डिस्को डिंगो 19.04 पर शिप करेगा, लेकिन अन्यथा आपको इसे डाउनलोड और इंस्टॉल करना होगा। उबंटू और अन्य डेबियन-आधारित लिनक्स डिस्ट्रो के लिए, आप प्रोग्राम को डाउनलोड और इंस्टॉल करने के लिए निम्न कमांड चलाना चाहेंगे।

wget https://github.com/sharkdp/fd/releases/download/v7.3.0/fd-musl_7.3.0_amd64.deb
sudo dpkg -i fd-musl_7.3.0_amd64.deb

यदि आपको 32-बिट संस्करण या अलग बिल्ड की आवश्यकता है, तो इसे fd के लिए GitHub रिलीज़ पेज से डाउनलोड करें।

डेबियन

डेबियन बस्टर या नए पर, आप fd को आधिकारिक डेबियन-रखरखाव वाले रिपॉजिटरी से इंस्टॉल कर सकते हैं।

sudo apt-get install fd-find

फेडोरा

फेडोरा 28 से, fd को आधिकारिक पैकेज संस्करणों से इंस्टॉल किया जा सकता है।

dnf install fd-find

आर्क लिनक्स

इसी तरह, आर्क उपयोगकर्ता आधिकारिक रिपोज से fd ले सकते हैं:

pacman -S fd

जेंटू लिनक्स

जेंटू उपयोगकर्ता fd ebuild डाउनलोड करने के लिए निम्न कमांड का उपयोग कर सकते हैं:

emerge -av fd

macOS

यदि आप macOS चला रहे हैं, तो Homebrew इंस्टॉल करें, फिर fd इंस्टॉल करने के लिए नीचे दी गई कमांड का उपयोग करें:

brew install fd

लिनक्स पर fd का उपयोग करना

fd कमांड की एक बुनियादी संरचना fd pattern है, जिसकी तुलना find . -iname 'pattern' से की जाती है।

फ़ाइल को उसके नाम से खोजने के लिए, निम्न कमांड का उपयोग करें:

fd filename

यह प्रीसेट वर्किंग डायरेक्टरी के भीतर, सबडायरेक्टरीज़ सहित खोजता है। किसी विशिष्ट निर्देशिका के भीतर खोजने के लिए, इसे अपने खोज शब्द के बाद निर्दिष्ट करें:

fd filename /path/to/search

परिणामों पर कमांड निष्पादित करना

find की तरह, fd में एक कार्यक्षमता है जो खोजी गई फ़ाइलों को निष्पादन के लिए दूसरी कमांड में पास करती है। जहां find find . -iname pattern -exec command का उपयोग करता है, fd -x फ्लैग का उपयोग करता है:

fd -e zip -x unzip

यह कमांड डायरेक्टरी में सभी ज़िप फ़ाइलों को unzip कमांड में भेज देगा। आप "वाक्यांश" के भीतर निम्न प्रतीकों का उपयोग करके जानकारी को विशिष्ट तरीकों से पास कर सकते हैं।

  • {}: एक प्लेसहोल्डर जिसे खोज परिणाम के पथ (files/images/portrait.jpg) से बदल दिया जाता है।
  • {/}: एक प्लेसहोल्डर जिसे केवल परिणाम के फ़ाइल नाम से बदल दिया जाएगा, जिसे UNIX पारखी बेसनेम (portrait.jpg) के रूप में जानते हैं।
  • {//}: प्लेसहोल्डर जिसे पाए गए आइटम्स की पैरेंट डायरेक्टरीज़ (files/images) से बदल दिया जाता है।
  • {.}: प्लेसहोल्डर जिसे फ़ाइल नाम के पथ से बदल दिया जाता है, बिना एक्सटेंशन के (files/images/portrait)।
  • {/.}: प्लेसहोल्डर जिसे पाए गए आइटम के बेसनेम से बदल दिया जाता है, बिना एक्सटेंशन के (portrait)।

उपरोक्त उद्धृत दो प्लेसहोल्डर प्रतीकों का उपयोग करके निम्न उदाहरण पर विचार करें:

fd -e flac -x ffmpeg -i {} -c:a libopus {.}.opus

अन्य उपयोगी fd फ्लैग्स

  • -e: फ़ाइलों के एक्सटेंशन को केवल खोजें, बिना अलग डॉट के।
  • -E pattern: निम्न पैटर्न से मेल खाने वाले परिणामों को बाहर करें।
  • --changed-newer-than date|duration: फ़ाइल संशोधन के बाद के समय के आधार पर परिणाम फ़िल्टर करें। यह केवल उन फ़ाइलों को दिखाएगा जिनकी संशोधन तिथि निर्दिष्ट तिथि से बाद की है। समय को एक अवधि के रूप में दिया जा सकता है जो वर्तमान क्षण से पीछे की ओर गिनता है (10h, 1d, 35min) या एक विशिष्ट समय पर सेट किया जा सकता है ("YYYY-MM-DD HH:MM:SS")।
  • --changed-older-than date|duration: --change-newer जैसा लेकिन निर्दिष्ट तिथि या अवधि से पहले संपादित फ़ाइलों को दिखाएगा, बाद में नहीं।
  • -t: केवल निर्दिष्ट प्रकार की फ़ाइलें दिखाएं (-tf फ़ाइलों के लिए, -td निर्देशिकाओं के लिए, -tx निष्पादन योग्य के लिए, -tl सिमलिंक्स के लिए, -te खाली फ़ाइलों के लिए)।
  • -p: केवल फ़ाइल नाम ही नहीं, संपूर्ण पथनाम के भीतर खोजें।
  • -s: केस-सेंसिटिविटी लागू करें। डिफ़ॉल्ट रूप से, fd केस को अनदेखा करता है जब तक कि खोज पैटर्न में एक अपरकेस अक्षर टाइप न किया जाए।
  • -H: परिणामों के भीतर छिपी हुई फ़ाइलों और निर्देशिकाओं को दिखाएं।
  • -L: सिमलिंक्ड निर्देशिकाओं में लिंक का पालन करें।

fd find कमांड के लिए एक अच्छा विकल्प है। यदि आपका अनुभव है कि "find" कमांड उपयोग करना कठिन है, तो fd का उपयोग करके आपको बेहतर भाग्य मिल सकता है। इसे आज़माएं और हमें बताएं कि क्या यह आपके लिए उपयोगी है।

  1. Linux में xargs कमांड का उपयोग कैसे करें Linux में xargs कमांड का उपयोग कैसे करें

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

  1. Linux में Find कमांड का उपयोग करके फ़ाइल ढूंढें Linux में Find कमांड का उपयोग करके फ़ाइल ढूंढें

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

  1. लिनक्स में tee कमांड का उपयोग कैसे करें लिनक्स में tee कमांड का उपयोग कैसे करें

    यदि आप कभी अपने लिनक्स शेल के तहत पाइप और रीडायरेक्शन का उपयोग करते हैं, तो संभावना है कि आपको कभी-कभी tee यूटिलिटी का उपयोग करने की भी आवश्यकता होगी। tee क्या करता है? ls जैसी कमांड आपके वर्तमान डायरेक्टरी की सामग्री प्रदर्शित करेगी। दूसरे शब्दों में, यह इन सामग्री को stdout (स्टैंडर्ड आउटपुट) पर प