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

लेख में फ़ाइलों को पढ़ने और चयनित पाठ पर संचालन करने के लिए नियमित अभिव्यक्तियों का उपयोग करने के लिए सर्वोत्तम लिनक्स उपकरण शामिल हैं। यह बेहतर समझ के लिए उनकी सबसे बुनियादी कार्यक्षमता और उदाहरणों को भी शामिल करता है।

1. ग्रेप

grep एक लिनक्स टेक्स्ट-मैनिपुलेटिंग उपयोगिता है जो किसी फ़ाइल या टेक्स्ट में रेगुलर एक्सप्रेशन के रूप में ज्ञात वर्णों या पैटर्न की एक स्ट्रिंग की खोज करती है। grep टूल उपयोगिताओं के परिवार से संबंधित है जिसमें egrep, fgrep, और grep शामिल हैं, जिनमें से fgrep सबसे तेज़ है, जबकि grep सबसे आसान है।

Grep का उपयोग करने के लिए सामान्य वाक्य रचना इस प्रकार है:

grep -विकल्प स्ट्रिंग फ़ाइल नाम

उदाहरण के लिए, "रूट" शब्द को खोजने के लिए /etc/passwd फ़ाइल:

grep रूट / आदि / पासवार्ड

आरंभ करने के लिए कुछ मानक कमांड-लाइन उदाहरण हैं:

विकल्प उदाहरण विवरण
-सी ग्रेप-सी ./bashrc उन पंक्तियों की संख्या गिनें जिनमें स्ट्रिंग मौजूद है
-मैं ग्रेप -आई ./bashrc निर्दिष्ट स्ट्रिंग के लिए केस-असंवेदनशील खोज करें
-ओ ग्रेप -ओ फ़ाइल केवल मिलान की गई स्ट्रिंग को प्रिंट करता है
-एल ग्रेप-एल "पासवार्ड" वर्तमान निर्देशिका में फ़ाइल नाम प्रिंट करता है जो पैटर्न से मेल खाता है
-एन ग्रेप-एन फ़ाइल निर्दिष्ट स्ट्रिंग वाली लाइन के साथ लाइन नंबर प्रिंट करता है
स्ट्रिंग1|स्ट्रिंग2 grep "string1|string2" फ़ाइल फ़ाइल से एकाधिक स्ट्रिंग ढूंढें और प्रिंट करें

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

उदाहरण के लिए, निम्न कमांड env कमांड आउटपुट को grep के इनपुट के रूप में पाइप करता है और वेरिएबल प्रदर्शित करता है जो "से शुरू होता है"हो":

env | ग्रेप ^ एचओ

सम्बंधित: Linux Grep कमांड के व्यावहारिक उदाहरण

2. awk

awk एक शक्तिशाली स्क्रिप्टिंग भाषा और एक कमांड-लाइन टेक्स्ट-मैनिपुलेशन टूल है जो लाइन-बाय-लाइन स्कैन कर सकता है और लाइनों की पैटर्न से तुलना कर सकता है। awk कमांड का मूल सिंटैक्स एकल उद्धरण चिह्न और फ़ाइल नाम के बाद घुंघराले ब्रेसिज़ के बीच परिभाषित एक क्रिया है।

awk '{कार्रवाई}' फ़ाइल नाम
अजीब '{पैटर्न; क्रिया}' फ़ाइल नाम

उपयोगिता नियमित अभिव्यक्तियों का उपयोग करके फ़ाइल की खोज करती है और क्रिया पैरामीटर में परिभाषित कार्य करती है। यदि आप एक पैटर्न सेट नहीं करते हैं, तो awk प्रत्येक पंक्ति पर स्क्रिप्ट निष्पादित करता है, जैसा कि नीचे दिखाया गया है:

awk '{प्रिंट $1}' awk_examples.txt

...कहाँ पे $1 का पहला क्षेत्र प्रदर्शित करता है awk_examples.txt फ़ाइल।

निम्न कमांड दूसरे फ़ील्ड को बदलकर दिए गए पैटर्न पर प्रिंट फ़ंक्शन करता है "दुनिया" साथ "ऐलिस," और पूरी लाइन ($0) प्रदर्शित करता है:

इको "हैलो वर्ल्ड" | awk '{$2="ऐलिस"; $0}' प्रिंट करें

आउटपुट:

हैलो ऐलिस

इसी तरह, आप फ़ंक्शन का उपयोग कर सकते हैं $0. प्रिंट करें उपरोक्त आदेश से अनुकरण करने के लिए ग्रेप कार्यक्षमता।

awk '/ जॉन/{प्रिंट $0}' /etc/passwd
जॉन: x: 1001:1001::/होम/जॉन:/बिन/श

3. तरह

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

awk '{प्रिंट $1}' awk_examples.txt | सॉर्ट > सॉर्ट_टेक्स्ट.txt
कैट सॉर्ट_टेक्स्ट.txt

आउटपुट:

सम्बंधित: लिनक्स में टेक्स्ट फाइलों को सॉर्ट का उपयोग कैसे करें

4. एसईडी

sed या स्ट्रीम संपादक वर्णों की एक धारा के रूप में इनपुट लेता है और निर्दिष्ट टेक्स्ट पर फ़िल्टरिंग और टेक्स्ट ट्रांसफ़ॉर्मेशन (डिलीट, सबस्टिट्यूट और रिप्लेस) करता है।

आप इसे एक स्क्रिप्ट में उपयोग कर सकते हैं और गैर-संवादात्मक रूप से फ़ाइलों को संपादित कर सकते हैं। इसलिए, उपयोगिता का सबसे बुनियादी उद्देश्य स्ट्रिंग/वर्णों का प्रतिस्थापन है। सामान्य वाक्यविन्यास है:

sed 's/string/प्रतिस्थापन/विकल्प' फ़ाइल

इस उपयोगिता की कार्यप्रणाली का अभ्यास करने और समझने के लिए यादृच्छिक वाक्यों का उपयोग करके एक फ़ाइल बनाएँ।

आइए शब्द की घटना को प्रतिस्थापित करें "दो"फ़ाइल की प्रत्येक पंक्ति पर"2" का उपयोग -जी वैश्विक प्रतिस्थापन के लिए ध्वज, इस प्रकार है:

sed 's/two/2/g' sed_examples.txt > sed_examples2.txt

इसी तरह, का उपयोग करें -डी फ़ाइल से एक विशिष्ट पंक्ति को हटाने के लिए ध्वजांकित करें:

सेड '2डी' sed_examples.txt

आप एक पंक्ति संख्या निर्दिष्ट करके स्ट्रिंग को प्रतिस्थापित भी कर सकते हैं (4 एस/दो/2/पी) और केवल प्रतिस्थापित लाइन को निम्नानुसार प्रिंट करना:

सेड -एन '4 एस/दो/2/पी' sed_examples2.txt

-एन उपरोक्त आदेश में ध्वज आउटपुट में इनपुट स्ट्रीम की स्वचालित प्रिंटिंग अक्षम करता है। आप इस विकल्प का उपयोग अपने पक्ष में grep उपयोगिता कार्यक्षमता को sed से बदलने के लिए कर सकते हैं।

उदाहरण के लिए, आप ऊपर दिए गए कमांड को केवल रेगेक्स पैटर्न को शामिल करके संशोधित कर सकते हैं /two/p ऐसा है कि -पी ध्वज केवल मानक आउटपुट स्ट्रीम में लाइनों को प्रिंट करेगा।

sed -n '/two/p' sed_examples2.txt

सम्बंधित: ये 10 sed उदाहरण आपको एक Linux Power User बना देंगे

5. कट गया

कट एक अन्य कमांड-लाइन उपयोगिता है जो एक लाइन या फ़ाइल से टेक्स्ट के कुछ हिस्सों को काटता/निकालता है। यह एक निर्दिष्ट फ़ील्ड, कैरेक्टर या बाइट स्थिति के आधार पर टेक्स्ट को काटता है और परिणाम को मानक आउटपुट में पाइप करता है।

उपयोगिता निम्नलिखित सिंटैक्स में लेती है:

कट गया  फ़ाइल

उपयोग -बी निर्दिष्ट बाइट या बाइट्स की श्रेणी का उपयोग करके अनुभाग या सामग्री को काटने का विकल्प:

कट -बी 1 cut_examples.txt

उपयोग -सी वर्णों की स्थिति निर्दिष्ट करके पाठ निकालने के लिए ध्वज:

कट-सी 1,3,5

अंत में, आप के साथ फ़ील्ड निर्दिष्ट करके टेक्स्ट भी निकाल सकते हैं -एफ विकल्प और -डी अंतरिक्ष या क्षेत्र सीमांकक के लिए:

कट-डी " " -f 1 cut_examples.txt

यहां उदाहरणों और विवरणों के साथ श्रेणियों की सूची दी गई है जिनका उपयोग आप चरित्र के साथ कर सकते हैं -सी और बाइट -बी विकल्प:

श्रेणी उदाहरण विवरण
एन- कट-सी 7- फ़ाइल नाम nवें पूर्णांक से पंक्ति के अंत तक वर्ण निकालें
एन-एम कट-बी 7-15 फ़ाइल नाम इनपुट फ़ाइल से प्रत्येक पंक्ति के पूर्णांक n-m से अर्क
-एम कट-सी -7 फ़ाइल नाम मी से शुरू होकर लाइन के अंत तक की पंक्तियों को निकालता है

ध्यान दें कि आप फ़ील्ड का उपयोग करके टेक्स्ट निष्कर्षण के लिए श्रेणियों को परिभाषित नहीं कर सकते हैं -एफ विकल्प।

लिनक्स कमांड के साथ टेक्स्ट में हेर-फेर करना

लिनक्स फाइलों या टेक्स्ट को संभालने और काम करने के लिए कई प्रोग्राम और टूल प्रदान करता है। उन सभी को सीखने की आवश्यकता नहीं हो सकती है क्योंकि जब आप एक पर अच्छी पकड़ रखते हैं, तो आप आसानी से दूसरे के साथ अंतर को भर सकते हैं, जैसे कि sed को grep या awk को grep के रूप में उपयोग करना, लेकिन यह हर टूल के लिए सही नहीं हो सकता है।

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

उन्नत लिनक्स उत्पादकता के लिए 8 सर्वश्रेष्ठ टर्मिनल ऐप्स

पुराने और उबाऊ टर्मिनल ऐप से थक गए हैं जो लिनक्स पर प्रीइंस्टॉल्ड आता है? इन आठ टर्मिनल ऐप्स को देखें जो आपके वर्कफ़्लो को बढ़ाएंगे।

आगे पढ़िए

साझा करनाकलरवईमेल
संबंधित विषय
  • लिनक्स
  • लिनक्स कमांड
लेखक के बारे में
रुमैसा नियाज़िक (7 लेख प्रकाशित)

रुमैसा MUO में एक स्वतंत्र लेखिका हैं। उसने गणितज्ञ से लेकर सूचना सुरक्षा के प्रति उत्साही तक कई टोपियाँ पहनी हैं, और अब वह SOC विश्लेषक के रूप में काम कर रही है। उसकी रुचियों में नई तकनीकों के बारे में पढ़ना और लिखना, लिनक्स वितरण, और सूचना सुरक्षा के आसपास कुछ भी शामिल है।

Rumaisa Niazi. की और फ़िल्में या टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें