Insert line into file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Insert line into file
# 1  
Old 07-01-2008
Insert line into file

Hi,

My File 'temp.txt' contents are like this.

<Managers>
Mng={{FIL|FAVEI.mng|111}|15.000000|17.000000|17.000000|
Mng={{FIL|FAPSV.mng|222}|3.000000|0.000000|0.000000|0.000000|
Mng={{FIL|FAVIF.mng|333}|8.000000|8.000000|8.000000|8.000000|
Mng={{FIL|FAVGR.mng|444}|15.000000|15.000000|15.000000|
Mng={{FIL|FAPST.mng|555}|3.000000|3.000000|3.000000|3.000000|
Mng={{FIL|FAVGO.mng|666}|13.000000|14.000000|14.000000|14.000000|
Mng={{FIL|FASOT.mng|777}|5.000000|5.000000|5.000000|5.000000}
Mng={{FIL|FAWSC.mng|888}|4.000000|4.000000|4.000000|4.000000}
</Managers>

Here I want to insert the line similar to other lines before </Managers> with
exactly similar number of columns. For example,

Mng={{FIL|FAPSA.mng|123}|0.000000|0.000000|0.000000|0.000000}

nedds to be inserted using perl script.
# 2  
Old 07-01-2008
Oops perl... already written in awk, nevertheless^^:
Code:
awk '/^\<\/Managers\>/ {print "Your line goes here!\n" $0; next}; {print}'  inputfile

<Managers>
Mng={{FIL|FAVEI.mng|111}|15.000000|17.000000|17.000000|
Mng={{FIL|FAPSV.mng|222}|3.000000|0.000000|0.000000|0.000000|
Mng={{FIL|FAVIF.mng|333}|8.000000|8.000000|8.000000|8.000000|
Mng={{FIL|FAVGR.mng|444}|15.000000|15.000000|15.000000|
Mng={{FIL|FAPST.mng|555}|3.000000|3.000000|3.000000|3.000000|
Mng={{FIL|FAVGO.mng|666}|13.000000|14.000000|14.000000|14.000000|
Mng={{FIL|FASOT.mng|777}|5.000000|5.000000|5.000000|5.000000}
Mng={{FIL|FAWSC.mng|888}|4.000000|4.000000|4.000000|4.000000}
Your line goes here!
</Managers>

# 3  
Old 07-01-2008
@zaxxon Shorter ?

Code:
# a='</Managers>'
# b='Mng={{FIL|FAPSA.mng|123}|0.000000|0.000000|0.000000|0.000000}'
# awk -v a=$a -v b=$b '{if($0==a) printf "%s\n%s\n",b,a ; else print}' file

# 4  
Old 07-01-2008
That's not shorter, just the values are assigned to shell variables and fed to awk variables. I would call that more flexible but not shorter Smilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Insert a line of text on nth line of a file

Hi All, I am using UNix Sun OS sun4u sparc SUNW,SPARC-Enterprise My intention is to insert a line of text after 13th line of every file inside a particular directory. While trying to do it for a single file , i am using sed sed '3 i this is the 4th line' filename sed: command garbled: 3... (5 Replies)
Discussion started by: gotamp
5 Replies

2. Shell Programming and Scripting

How to read a text file line by line and insert into a database table?

I have a test file that I want to read and insert only certain lines into the the table based on a filter. 1. Rread the log file 12 Hours back Getdate() -12 Hours 2. Extract the following information on for lines that say "DUMP is complete" A. Date B. Database Name C.... (2 Replies)
Discussion started by: JolietJake
2 Replies

3. Shell Programming and Scripting

Insert a line in a file by deleting that line from another file

Hi all, I have a huge file(size more that 5GB). I want to do some manupulation with the records and write to another file. As the size of the file is huge and there is a space constraint in that directory, I want to delete that record from first file after writing it in to second file.... (3 Replies)
Discussion started by: gani_85
3 Replies

4. Shell Programming and Scripting

Insert a new line before every 5th line in a file

Hi, I need to insert a new line containing the string "QUERY" above every 5 lines. The below piece of code inserts a new line after every 5th line awk '{print $0} !(NR%5) {print "QUERY"}' sed 'n;n;n;n;G;' --> I do not know how to give "QUERY" string here But I need to insert it before... (4 Replies)
Discussion started by: royalibrahim
4 Replies

5. Programming

insert line into a file

how to insert a line of text that is next to the current line(file pointer pointing to) in the file ?? :wall: ex: suppose a file named 'Sample' has the following content in it. this is to give clear idea about the problem if file pointer is pointing to the first line then i want to... (3 Replies)
Discussion started by: kavitha rao
3 Replies

6. Shell Programming and Scripting

Insert blank line in a file

I have a file with data as below : Heading 1 ------------- Heading 1 data1 Heading 1 data2 Heading 1 data3 Heading 1 data4 Heading 2 ------------- Heading 2 data1 Heading 2 data2 Heading 2 data3 Heading 2 data4 Heading 3 ------------- Heading 3 data1 Heading 3 data2 Heading 3... (2 Replies)
Discussion started by: yoursdivu
2 Replies

7. Shell Programming and Scripting

How to insert Parentheses to each line in a file

Hi I have a file with numbers like this : 123 456 6798 9073233 12 8644 Now, I need to insert parentheses to each and every line like below : (123) (456) (6798) (9073233) (12) (8644) can anyone tell me a solution? (8 Replies)
Discussion started by: sudharsan23
8 Replies

8. UNIX for Advanced & Expert Users

help with insert line into file

hi..i wanted to know is there any way to take input from the user and copy that a particular line number in a particular file for eg . i wanted to create acl in squid at line number 2400 in squid.conf file so the user gives an input like acl inetblock src 192.168.0.0/255.255.0.0 so is there... (4 Replies)
Discussion started by: tarunicon
4 Replies

9. Shell Programming and Scripting

insert a line in a file

Hello guys, Need to know how to insert a line at top of the file, without using temp files. Can we do it on the fly? Regards, Rishi (7 Replies)
Discussion started by: RishiPahuja
7 Replies

10. UNIX for Advanced & Expert Users

Insert a line as the first line into a very huge file

Hello, I need to insert a line (like a header) as the first line of a very huge file (about 3 ml rows). I am able to do it with sed, but redirecting the output and creating a new file takes quite some time. I was wondering if there was a more efficient way of doing it? Any help would be... (3 Replies)
Discussion started by: shriek
3 Replies
Login or Register to Ask a Question