में पहली गैर-मिलान वाली रेखा खोजें कभी-कभी ऐसा होता है कि मुझे विंडोज़ पर विभिन्न लॉग और ट्रेस फाइलों को देखना होगा और आम तौर पर मैं उद्देश्य वीआईएम के लिए उपयोग करता हूं। एक पंक्ति बफ़र नहीं मिलान दिया नियमित अभिव्यक्ति में मिल:वीआईएम
मेरे समस्या यह है कि मैं अभी भी नहीं किसी भी अनुरूप grep -v
की विम के अंदर मिल सकती है। जैसे लॉग फ़ाइल उन रेखाओं से भरी हुई है जो किसी बीच में कहीं भी all is ok
वाक्यांश हैं और मुझे पहली पंक्ति ढूंढनी होगी जिसमें all is ok
नहीं है।
मैं इसके लिए एक कस्टम फ़ंक्शन लिख सकता हूं, फिर भी इस समय एक ओवरकिल लगता है और मूल समाधान की तुलना में धीमी होने की संभावना है।
क्या वीआईएम में ऐसा करने का कोई आसान तरीका है?
:%g!/search/p
यह बाहर मुद्रित करने के लिए कहते हैं गैर मिलान लाइनों ... यकीन नहीं करता है, तो यह है कि काम किया, लेकिन यह के साथ खत्म किया:
'/^.\+\(^.*all ठीक है। * $ \) \ @ Dummy00001
': जी!/पैटरन/पी 'बहुत अधिक उत्पादन पैदा करता है। कुछ एमएलएन लाइन फ़ाइल के लिए जो एक विकल्प नहीं है। लेकिन ': g!/Pattern/d' बहुत उपयोगी दिखता है उदा। stdin से पढ़ने वाले बफर के साथ काम करने के लिए, अभी तक एक फ़ाइल में सहेजा नहीं गया है। – Dummy00001
उम ... जाहिर है कि मेरे मामले के लिए ': g!/Pattern/d' (बिना छेड़छाड़ की लाइनों को अनदेखा करने वाली रेखाओं को अनदेखा करें) को 'g/Pattern/d'' के रूप में लिखा जाना चाहिए! - अनिच्छुक लाइनों को हटाने के लिए। – Dummy00001