स्ट्रीम एडिटर के साथ 15 वीं लाइन को छोड़कर हर 3 जी और 5 वीं लाइन को हटाएं


1

मुझे पाठ फ़ाइल का उपयोग करके 15 वीं पंक्ति को छोड़कर प्रत्येक 3 जी और 5 वीं पंक्ति को हटाने की आवश्यकता है एसईडी । किसी को एक विचार है?


क्या यह साक्षात्कार का प्रश्न है? :)
Richard Holloway

जवाबों:


3

अगले आदेश का प्रयास करें। आपको GNU संस्करण की आवश्यकता होगी sed:

sed '15 b ; 0~3 d ; 0~5 d' infile

पहले जांचें कि क्या लाइन 15 वीं है: प्रिंट करें और अगले एक को पढ़ें। अन्यथा, हर तीसरी पंक्ति और हर 5 वीं पंक्ति को पहले वाले से हटाएं।


2

यदि आप उपयोग करते हैं तो यह बहुत आसान है awk:

$ awk '(NR%3 && NR%5) || NR==15' input.txt

मुझे लगता है कि यह होना चाहिए (एनआर! = 15), OQ ने कहा कि 15 को छोड़कर, हर 15 को छोड़कर नहीं।
Rich Homolka
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.