मैं मूल अंग्रेजी वक्ता नहीं हूं इसलिए मुझे स्पष्ट होने की उम्मीद है।
मुझे इसके बारे में मालूम है grep -C 2 "TARGET" inputfile
TARGET की पंक्ति से पहले और बाद में 2 पंक्तियों का चयन करने के लिए, लेकिन मैं अपनी समस्या को प्रबंधित करने के लिए इसका उपयोग करने में सक्षम नहीं हूं।
मेरे पास इस तरह से संरचित फाइलें हैं
1 0 value1 value2 value3
2 H value1 value2 value3
3 H value1 value2 value3
4 H value1 value2 value3
5 H value1 value2 value3
6 0 value1 value2 value3
7 0 value1 value2 value3
8 H value1 value2 value3
9 0 value1 value2 value3
कई पंक्तियों के साथ। आवश्यक समाधान इस तरह की एक फ़ाइल होगी
X X X X X
1 0 value1 value2 value3
2 H value1 value2 value3 *
3 H value1 value2 value3
4 H value1 value2 value3
1 0 value1 value2 value3
2 H value1 value2 value3
3 H value1 value2 value3 *
4 H value1 value2 value3
5 H value1 value2 value3
... all the other till
6 0 value1 value2 value3
7 0 value1 value2 value3
8 H value1 value2 value3 *
9 0 value1 value2 value3
X X X X X
जहां TARGET "H" है, * चयनित पंक्ति को इंगित करना है (लेकिन मुझे आउटपुट फ़ाइल में * की आवश्यकता नहीं है) और X लक्ष्य के पहले या बाद में पंक्तियों की संख्या को समायोजित करने के लिए प्लेसहोल्डर हैं! मैं awk और sed के साथ भी कोई परिणाम नहीं के साथ की कोशिश की।