पारंपरिक चरित्र श्रेणियाँ
यदि हम एक नियमित अभिव्यक्ति बनाना चाहते हैं जो हमारी सूचियों में प्रत्येक फ़ाइल को एक बड़े अक्षर से जोड़ दे, तो हम यह कर सकते हैं:
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[ABCDEFGHIJKLMNOPQRSTUVWXZY]' dirlist*.txt
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[ABCDEFGHIJKLMNOPQRSTUVWXZY]' dirlist*.txt
यह केवल सभी 26 बड़े अक्षरों को एक कोष्ठक अभिव्यक्ति में रखने की बात है। लेकिन उस टाइपिंग का विचार बहुत परेशान करने वाला है, इसलिए एक और तरीका है:
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[AZ]' dirlist*.txt
माकेदेव
कंट्रोल पैनल प्राप्त करें
हेड पोस्ट X X11
ज़ोर्ग मेकफ़्लॉपीज़
नेटवर्क प्रबंधक नेटवर्क प्रबंधक डिस्पैचर
[मुझे@लिनक्सबॉक्स ~]$ grep -h '^[AZ]' dirlist*.txt
माकेदेव
कंट्रोल पैनल प्राप्त करें
हेड पोस्ट X X11
ज़ोर्ग मेकफ़्लॉपीज़
नेटवर्क प्रबंधक नेटवर्क प्रबंधक डिस्पैचर
तीन वर्णों की श्रेणी का उपयोग करके, हम 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
डैश, या अपरकेस "ए" या अपरकेस "जेड" वाले प्रत्येक फ़ाइल नाम से मेल खाएगा।