AWK पैटर्न रेंज के साथ ऐसा कर सकता है, जो किसी भी नियमित अभिव्यक्ति के उपयोग की अनुमति देता है:
echoer | awk '/pattern/,0'
echoer
पहली पंक्ति के मिलान से शुरू होने वाले आउटपुट को प्रिंट करेगा pattern
।
AWK पैटर्न-आधारित है, और आमतौर पर इसका उपयोग "यदि यह पैटर्न मेल खाता है, तो करें" के साथ किया जाता है। "यह पैटर्न" पैटर्न की एक सीमा हो सकती है, जिसे "जब यह पैटर्न मेल खाता है, तब तक इसे करना शुरू करें, जब तक कि यह अन्य पैटर्न से मेल नहीं खाता"; यह ऊपर के रूप में अल्पविराम द्वारा अलग किए गए दो पैटर्न लिखकर निर्दिष्ट किया गया है। पैटर्न टेक्स्ट मैच हो सकते हैं, जैसे कि /pattern/
, जहां वर्तमान लाइन को पैटर्न के खिलाफ जांचा जाता है, एक नियमित अभिव्यक्ति के रूप में व्याख्या की जाती है; वे सामान्य भाव भी हो सकते हैं, प्रत्येक पंक्ति के लिए मूल्यांकन किया जा सकता है, और यदि उनका परिणाम गैर-शून्य या गैर-रिक्त है, तो मिलान करने के लिए माना जाता है।
AWK में, डिफ़ॉल्ट क्रिया वर्तमान लाइन को प्रिंट करना है।
यह सब एक साथ रखकर, awk '/pattern/,0'
लाइनों के मिलान की तलाश करता है pattern
, और एक बार जब यह मिल जाता है, तो सभी लाइनों पर डिफ़ॉल्ट कार्रवाई लागू होती है जब तक कि 0
स्थिति मैच नहीं होती है (गैर-शून्य है)। awk '/pattern/,""'
काम भी करेगा।
Gawk मैनुअल और अधिक विस्तार में चला जाता है।