bash - Shell script to find the last occurring line ID in a file and add a new one -


मेरे पास निम्न प्रारूप के साथ एक टेक्स्ट फाइल है:

  एबीसी डीईफ़ ...। .. आईडी = 1 यह प्रविष्टि 1 आईडी = 2 यह प्रविष्टि 2 है ... आईडी = & lt; N & gt; यह प्रविष्टि है & lt; N & gt; Xyz ...   

मैं लाइन "xyz" से पहले पाठ फ़ाइल में निम्नलिखित नई प्रविष्टि को कैसे सम्मिलित करूँ?

  आईडी = एन + 1 यह है एंट्री के & lt; एन 1 & gt;   

मामले को उलझाए रखने के लिए आगे आईडी लाइनें फ़ाइल में क्रम में नहीं हो सकती हैं, इसलिए यह हो सकता है कि आदेश:

  एबीसी डीईफ़ ... आईडी = 5 आईडी = 2 आईडी = एन ... आईडी = 9 ... xyz   

(जहां N = 10, सर्वोच्च)।

क्या कोई यह पहचानने का तरीका है कि उच्चतम (संख्यात्मक) आईडी लाइन फ़ाइल में है और फिर "xyz" लाइन के समय से पहले एक नई लाइन "आईडी =" जोड़ रहा है?

धन्यवाद अग्रिम!

एक और तरीका है awk

  awk -F = '/ id = / { X = $ 2 & gt; x? $ 2: x} एफ एन आर == एनआर {अगली} / xyz / {प्रिंट "आईडी =" एक्स + 1 "\ n यह प्रविष्टि प्रविष्ट है & lt;" x + 1 "& gt;"} 1 'परीक्षण {, }    

Comments

Popular posts from this blog

ios - Adding an SKSpriteNode to SKScene from a child SKSpriteNode -

Matlab transpose a table vector -

c# - Textbox not clickable but editable -