पारंपरिक चरित्र श्रेणियाँ
यदि हम एक नियमित अभिव्यक्ति का निर्माण करना चाहते हैं जो हमारी सूचियों में प्रत्येक फ़ाइल को बड़े अक्षर से शुरू करके ढूंढ सके, तो हम ऐसा कर सकते हैं:
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[ABCDEFGHIJKLMNOPQRSTUVWXZY]' dirlist*.txt
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[ABCDEFGHIJKLMNOPQRSTUVWXZY]' dirlist*.txt
यह सिर्फ़ सभी 26 बड़े अक्षरों को ब्रैकेट में रखने का मामला है। लेकिन इतना टाइप करने का विचार बहुत परेशान करने वाला है, इसलिए एक और तरीका है:
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[AZ]' dirlist*.txt
मकेदेव
कंट्रोलपैनल GET
हेड पोस्ट X X11
Xorg मेकफ्लॉपीज़
नेटवर्क प्रबंधक नेटवर्क प्रबंधक डिस्पैचर
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[AZ]' dirlist*.txt
मकेदेव
कंट्रोलपैनल GET
हेड पोस्ट X X11
Xorg मेकफ्लॉपीज़
नेटवर्क प्रबंधक नेटवर्क प्रबंधक डिस्पैचर
तीन अक्षर की श्रेणी का उपयोग करके, हम 26 अक्षरों को संक्षिप्त कर सकते हैं। किसी भी अक्षर की श्रेणी -
ters को कई श्रेणियों सहित इस तरह से व्यक्त किया जा सकता है, जैसे कि यह अभिव्यक्ति जो अक्षरों और संख्याओं से शुरू होने वाले सभी फ़ाइल नामों से मेल खाती है:
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[A-Za-z0-9]' dirlist*.txt
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[A-Za-z0-9]' dirlist*.txt
कैरेक्टर रेंज में, हम देखते हैं कि डैश कैरेक्टर को विशेष रूप से माना जाता है, तो हम वास्तव में ब्रैकेट एक्सप्रेशन में डैश कैरेक्टर को कैसे शामिल करते हैं? इसे एक्सप्रेशन में पहला कैरेक्टर बनाकर। इन दो उदाहरणों पर विचार करें:
[मुझे@लिनक्सबॉक्स ~]$ grep -h '[AZ]' dirlist*.txt
[मुझे@लिनक्सबॉक्स ~]$ grep -h '[AZ]' dirlist*.txt
यह बड़े अक्षर वाले हर फ़ाइल नाम से मेल खाएगा। जबकि:
[मुझे@लिनक्सबॉक्स ~]$ grep -h '[-AZ]' dirlist*.txt
[मुझे@लिनक्सबॉक्स ~]$ grep -h '[-AZ]' dirlist*.txt
डैश, या अपरकेस “A” या अपरकेस “Z” वाले प्रत्येक फ़ाइल नाम से मेल खाएगा।