कहो कि मेरे पास निम्न फ़ाइल है:
$ cat test
test line 1
test line 2
line without the search word
another line without it
test line 3 with two test words
test line 4
डिफ़ॉल्ट रूप से, grep
खोज शब्द में प्रत्येक पंक्ति देता है:
$ grep test test
test line 1
test line 2
test line 3 with two test words
test line 4
--color
पैरामीटर को पास करने के grep
लिए यह खोज अभिव्यक्ति से मेल खाने वाली रेखा के हिस्से को उजागर करेगा, लेकिन यह अभी भी केवल उन पंक्तियों को वापस करता है जिनमें अभिव्यक्ति होती है। क्या grep
स्रोत फ़ाइल में प्रत्येक पंक्ति को आउटपुट करने का एक तरीका है , लेकिन मैचों को हाइलाइट करें?
इसे पूरा करने के लिए मेरी वर्तमान भयानक हैक (कम से कम उन फ़ाइलों पर जिनके पास बिना मिलान के 10000+ लगातार लाइनें हैं):
$ grep -B 9999 -A 9999 test test
यदि grep
इसे पूरा नहीं किया जा सकता है, तो क्या कोई अन्य कमांड लाइन टूल है जो समान कार्यक्षमता प्रदान करता है? मैंने इसके साथ काम किया है ack
, लेकिन इसके लिए कोई विकल्प नहीं है।
-C 9999
के स्थान पर -A 9999 -B 9999
मैं हमेशा कार्य करें:grep -C 9999 pattern file