awk script to insert text in file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting awk script to insert text in file
# 1  
Old 03-06-2009
awk script to insert text in file

I'm in a time crunch here and I don't know how to write scripts.

I have a file of data that looks like the following:

1 7.652073E+00 0.000000E+00 7.146691E+02 1.704154E+01
2 7.652068E+00 6.031387E+00 7.146636E+02 2.499305E+01
3 7.645906E+00 1.509455E+01 7.144158E+02 1.822061E+02
4 7.644384E+00 0.000000E+00 7.060164E+02 1.906207E+02
5 7.644851E+00 1.656708E+01 7.143705E+02 2.082920E+02
6 7.643266E+00 0.000000E+00 7.049532E+02 2.136475E+02
7 7.652025E+00 5.653657E+00 7.146640E+02 2.484270E+01
8 7.652030E+00 0.000000E+00 7.146688E+02 1.696780E+01
9 7.648590E+00 1.493431E+01 7.144656E+02 1.755838E+02
10 7.651975E+00 7.533265E+00 7.146561E+02 3.659776E+01
11 7.652441E+00 0.000000E+00 7.146912E+02 5.900617E+00
12 7.652447E+00 3.129451E+00 7.146904E+02 4.833028E+00
13 7.652094E+00 5.238432E+00 7.146674E+02 2.240046E+01
14 7.652090E+00 0.000000E+00 7.146713E+02 1.565879E+01
15 7.642858E+00 1.637091E+01 7.144912E+02 2.286945E+02

its over 500k lines... i need it to look like this:

1 7.652073E+00 0.000000E+00 7.146691E+02 1.704154E+01 0.100000E+03
0.999900E+04 0.254000E-03
2 7.652068E+00 6.031387E+00 7.146636E+02 2.499305E+01 0.100000E+03
0.999900E+04 0.254000E-03
3 7.645906E+00 1.509455E+01 7.144158E+02 1.822061E+02 0.100000E+03
0.999900E+04 0.254000E-03
4 7.644384E+00 0.000000E+00 7.060164E+02 1.906207E+02 0.100000E+03
0.999900E+04 0.254000E-03
5 7.644851E+00 1.656708E+01 7.143705E+02 2.082920E+02 0.100000E+03
0.999900E+04 0.254000E-03
6 7.643266E+00 0.000000E+00 7.049532E+02 2.136475E+02 0.100000E+03
0.999900E+04 0.254000E-03
7 7.652025E+00 5.653657E+00 7.146640E+02 2.484270E+01 0.100000E+03
0.999900E+04 0.254000E-03
8 7.652030E+00 0.000000E+00 7.146688E+02 1.696780E+01 0.100000E+03
0.999900E+04 0.254000E-03
9 7.648590E+00 1.493431E+01 7.144656E+02 1.755838E+02 0.100000E+03
0.999900E+04 0.254000E-03
10 7.651975E+00 7.533265E+00 7.146561E+02 3.659776E+01 0.100000E+03
0.999900E+04 0.254000E-03
11 7.652441E+00 0.000000E+00 7.146912E+02 5.900617E+00 0.100000E+03
0.999900E+04 0.254000E-03
12 7.652447E+00 3.129451E+00 7.146904E+02 4.833028E+00 0.100000E+03
0.999900E+04 0.254000E-03
13 7.652094E+00 5.238432E+00 7.146674E+02 2.240046E+01 0.100000E+03
0.999900E+04 0.254000E-03
14 7.652090E+00 0.000000E+00 7.146713E+02 1.565879E+01 0.100000E+03
0.999900E+04 0.254000E-03
15 7.642858E+00 1.637091E+01 7.144912E+02 2.286945E+02 0.100000E+03
0.999900E+04 0.254000E-03


is there anyway someone can write me an awk script to insert the 0.100000E+03
0.999900E+04 0.254000E-03

it would be great. it needs to be in that format.

Thanks,
pk
# 2  
Old 03-06-2009
Try this:

Code:
 
cat filename | while read line
do
  line=$(echo "${line} 0.100000E+03 0.999900E+04 0.254000E-03")
  echo $line >> newfilename
done

HTH,Smilie

Regards,

Praveen
# 3  
Old 03-06-2009
Use the following command
sed 's/\(.*\)/\1 0.100000E+03 0.999900E+04 0.254000E-03/g' file >file.tmp
# 4  
Old 03-06-2009
Maybe this will help.

I've attached the Initial_sample file without the 3 columns inserted

and a final_sample of what it needs to look like.

thanks for the help guy

sunpraveen, yours almost worked the format was just a little off
# 5  
Old 03-06-2009
try this:
less file | sed 's/$/0.100000E+03 0.999900E+04 0.254000E-03/' > file1
# 6  
Old 03-06-2009
do i just type that into bash shell?

i'm a serious noob sorry
# 7  
Old 03-06-2009
Quote:
Originally Posted by sach253
try this:
less file | sed 's/$/0.100000E+03 0.999900E+04 0.254000E-03/' > file1
ok this inserted the lines correctly... but it didn't hold the format and make the second two columns write on the next line
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

TCL script to insert some text on a file

Hi All , I am looking to create one TCL script to insert one text based on some regular expression match on one file as stated below Input File module (mem1 ,mem2 , bist1 , ten2 , sen1 , land2 , taane2 , ran1 , ran2 , tri2 , tri8 , fly1 , fly2 , san2 ); output ran1 , ran2 , tri2 ,... (1 Reply)
Discussion started by: kshitij
1 Replies

2. Shell Programming and Scripting

How to insert text within a file?

Hi, I am trying to check for missing dates in a file and would want to insert the missing date into the file. Currently the script is as below #!/bin/ksh dates="dates" cat ${dates} | grep -v "^#" curr_month=`date '+%m` curr_day=`date '+%d` curr_year=`date '+%Y` #curr_month=02... (7 Replies)
Discussion started by: newbie_01
7 Replies

3. UNIX for Dummies Questions & Answers

Insert text into a file using shell script

Hi, I need to insert "Hello World" text into a file called hai.txt using shell scripting. Kindly help me. For eg: If I open the file hai.txt by giving linux command cat hai.txt, the content of the file should have the text Hello World in it. Thanks (5 Replies)
Discussion started by: karthick nath
5 Replies

4. Shell Programming and Scripting

Shell Script to insert text after Tag

Hello, I'm doing an Shell Script to insert a text on XML file, i tried sed, awk, perl... i'm doing something wrong, please help me :) well, the script is a bit large, i get some infos on script before 'run' this part to insert the text on XML... domobile() { let i++ echo ... (1 Reply)
Discussion started by: tassomanoel
1 Replies

5. Shell Programming and Scripting

Insert value to db from text file

Hi, I have a single value in insertval file. I want to load that value to database with the current date. I tried the below code but it is inserting <NULL> to database and echo $c is also null. cat insertval | awk -F ' ' '{print $1}' > c echo c=$c data=`sqlplus -s user/pwd@hostname <<EOF ... (5 Replies)
Discussion started by: Neethu
5 Replies

6. Shell Programming and Scripting

Script to insert text from one file to other file

Hello Team, I need help in preparing script which will insert text from one file to other file. I have requirement to prepare script which will insert data from one file to another file. I have tried using sed and awk command but it is not useful to me as it does not append data in the... (12 Replies)
Discussion started by: coolguyamy
12 Replies

7. Shell Programming and Scripting

Insert Text On file

Hi All, Can someone pls help me to insert some text on a file. my file contains something like below.. AKBULBU, BALUMIL, BATCH,BATCH BOARROB, BOTAKAT, C57896, CAKIOZE, CHECMER, CICOFRA, CISZPAW,2194485 I want output as USER_ID, LOGIN_ID (6 Replies)
Discussion started by: harshakusam
6 Replies

8. Shell Programming and Scripting

Need to insert new text and change existing text in a file using SED

Hi all, I need to insert new text and change existing text in a file. For that I used the below line in the command line and got the expected output. sed '$a\ hi... ' shell > shell1 But I face problem when using the same in script. It is throwing the error as, sed: command garbled:... (4 Replies)
Discussion started by: iamgeethuj
4 Replies

9. Shell Programming and Scripting

How to insert some constant text at beginig of each line within a text file.

Dear Folks :), I am new to UNIX scripting and I do not know how can I insert some text in the first column of a UNIX text file at command promtp. I can do this in vi editor by using this command :g/^/s//BBB_ e,g I have a file named as Test.dat and it containins below text: michal... (4 Replies)
Discussion started by: Muhammad Afzal
4 Replies
Login or Register to Ask a Question