सवाल उन सभी पंक्तियों को कैसे हटाएं जिनमें विम में कोई निश्चित शब्द न हो?


विम में मैं उन सभी पंक्तियों को हटा सकता हूं जिनमें "मूल्य" शब्द शामिल है

:g /price/d

मैं उन सभी पंक्तियों को कैसे हटा सकता हूं जिनमें "मूल्य" शब्द नहीं है?


90
2018-03-31 23:00


मूल


क्या यह प्रश्न माइग्रेट किया जा सकता है vi.stackexchange.com? मैंने माइग्रेशन के लिए इसे ध्वजांकित करने की कोशिश की लेकिन इसे समझ नहीं पाया। - Mu Mind
@MuMind यह विषय पर है, तो माइग्रेट करने की कोई ज़रूरत नहीं है। "माइग्रेशन के लिए माइग्रेट न करें। हम केवल प्रश्नों को माइग्रेट करते हैं क्योंकि वे हैं मूल साइट पर ऑफ-विषय। एक प्रश्न के लिए कई साइटों पर विषय पर पूरी तरह से संभव है, लेकिन यह कहीं और माइग्रेट करने का कारण नहीं है, जब तक कि ओपी माइग्रेशन का अनुरोध न करे। "इसके अलावा, केवल एसई कर्मचारी 60 दिनों के बाद माइग्रेट कर सकते हैं और यह बहुत दुर्लभ है कि वे होगा (यहां तक ​​कि मॉडरेटर भी पुराने प्रश्न को माइग्रेट नहीं कर सकते हैं)। - 8bittree


जवाब:


आप उपयोग कर सकते हैं

:%g!/price/d

प्रत्येक पंक्ति को हटाने के लिए जिसमें "मूल्य" नहीं है


127
2018-03-31 23:09



मुझे पता था कि यह आसान होगा ... - digitaljoel
:g! के रूप में भी जाना जाता है :v (के सदृश grep -v)। - Chris Johnsen
इससे क्या होता है % करना? - hippietrail
% इस संदर्भ में एक विशेष श्रृंखला है जिसका अर्थ है पूरी फाइल। देख :help cmdline-ranges। - Heptite


आप भी उपयोग कर सकते हैं:

:v/price/d

लाइनों को हटाने के लिए।


13
2017-10-07 08:03





%!grep "price"

एक और विकल्प है जो काफी तेज़ हो सकता है :v बड़ी फाइलों के लिए।

विम 7.4, उबंटू 14.04, 1 एम लाइन लॉग फ़ाइल पर परीक्षण किया गया।

रेखाएं जिनमें शब्द होता है: https://stackoverflow.com/questions/1725265/how-can-i-delete-all-lines-that-do-not-begin-with-certain-characters/42714334#42714334


3
2018-03-10 09:02