Fzf - लिनक्स टर्मिनल से एक त्वरित फ़ज़ी फ़ाइल खोज


Fzf एक छोटे, धधकते तेज, सामान्य-उद्देश्य और क्रॉस-प्लेटफ़ॉर्म कमांड-लाइन फ़ज़ी फ़ाइंडर है, जो आपको लिनक्स और विंडोज ऑपरेटिंग सिस्टम में फ़ाइलों को जल्दी से खोजने और खोलने में मदद करता है। यह बिना किसी निर्भरता के पोर्टेबल है और इसमें Vim/Neovim plugin, key bindings और फजी ऑटो-पूर्णता के लिए समर्थन के साथ एक लचीला लेआउट है।

निम्नलिखित GIF दिखाता है कि यह कैसे काम करता है।

Fzf को स्थापित करने के लिए, आपको fzf की Github रिपॉजिटरी को किसी भी निर्देशिका में क्लोन करना होगा और अपने लिनक्स वितरण पर दिखाए गए अनुसार स्क्रिप्ट इंस्टॉल करना होगा।

$ git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
$ cd ~/.fzf/
$ ./install

स्क्रिप्ट चलाने के बाद, आपको फ़ज़ी ऑटो-पूर्ण, कुंजी बाइंडिंग सक्षम करने और अपनी शेल कॉन्फ़िगरेशन फ़ाइल अपडेट करने के लिए संकेत दिया जाएगा। निम्नलिखित स्क्रीनशॉट में दिखाए गए सवालों के जवाब <कोड> y ( हां के लिए)।

फेडोरा 26 और इसके बाद के संस्करण, और आर्क लिनक्स पर, आप इसे पैकेज मैनेजर के माध्यम से स्थापित कर सकते हैं जैसा कि दिखाया गया है।

$ sudo dnf install fzf	#Fedora 26+
$ sudo pacman -S fzf	#Arch Linux 

अब जब आपने fzf स्थापित कर लिया है, तो आप इसका उपयोग शुरू कर सकते हैं। जब आप fzf चलाते हैं, तो यह एक इंटरेक्टिव खोजक खोलेगा; स्टड से फ़ाइलों की सूची पढ़ता है, और चयनित आइटम को stdout लिखता है।

बस उस फ़ाइल का नाम लिखें जिसे आप प्रॉम्प्ट में ढूंढ रहे हैं। जब आपको यह मिल जाए, तो दर्ज करें पर क्लिक करें और फ़ाइल का सापेक्ष पथ stdout पर प्रिंट हो जाएगा।

$ fzf

वैकल्पिक रूप से, आप जिस फ़ाइल को खोज रहे हैं, उसके सापेक्ष पथ को एक नामित फ़ाइल में सहेज सकते हैं और बिल्ली की आज्ञा या bcat जैसी उपयोगिता का उपयोग करके फ़ाइल की सामग्री को देख सकते हैं।

$ fzf >file
$ cat file
OR
$ bat file

आप इसका उपयोग खोज आदेश के साथ संयोजन में भी कर सकते हैं, उदाहरण के लिए।

$ find ./bin/ -type f | fzf >file
$ cat file

बैश और ज़ीश में फजी समापन का उपयोग कैसे करें

फ़ाइलों और निर्देशिकाओं के लिए पूर्ण पूर्णता को ट्रिगर करने के लिए, ट्रिगर अनुक्रम के रूप में <कोड> ** वर्ण जोड़ें।

$ cat **<Tab>

कमांड-लाइन पर पर्यावरण चर के साथ काम करते हुए आप इस सुविधा का उपयोग कर सकते हैं।

$ unset **<Tab>
$ unalias **<Tab>
$ export **<Tab>

यह वही है जो ssh और टेलनेट आदेशों के लिए लागू होता है, उन ऑटो-होस्ट होस्ट नामों के लिए जिन्हें /etc/होस्ट और से पढ़ा जाता है। ~/.ssh/config

$ ssh **<Tab>

यह मार कमांड के साथ भी काम करता है, लेकिन ट्रिगर अनुक्रम के बिना दिखाया गया है।

$ kill -9 <Tab>

Fimf को Vim plugin के रूप में कैसे इनेबल करें

Vim plugin के रूप में fzf को सक्षम करने के लिए, अपनी Vim कॉन्फ़िगरेशन फ़ाइल में निम्न पंक्ति जोड़ें।

set rtp+=~/.fzf

fzf सक्रिय रूप से विकसित किया जा रहा है और आसानी से निम्नलिखित कमांड का उपयोग करके नवीनतम संस्करण में अपग्रेड किया जा सकता है।

$ cd ~/.fzf && git pull && ./install

उपयोग विकल्पों की पूरी सूची देखने के लिए, आदमी fzf चलाएं या इसके Github Repository: https://github.com/junegunn/fzf देखें।

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