extract content from a file and insert to another file


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting extract content from a file and insert to another file
# 1  
Old 12-04-2006
extract content from a file and insert to another file

please help for the following task...

I have to extract the mac address & IP address from the file1:

...
0100004512EEF4 03 192.168.0.7 192.168.0.1 -1 ...
0100779hF5D212 03 192.168.0.8 192.168.0.1 -1 ...
0100789lF5D212 03 192.168.0.9 192.168.0.1 -1 ...
...

change the format (addidng colon) and insert into file 2

...
host {
hardware ethernet 00:00:45:12:EE:F4;
fixed-address 192.168.0.7;
}

host {
hardware ethernet 00:77:9h:F5Smilie2:12;
fixed-address 192.168.0.8;
}
...

please tell me how I can exact the data and change the format and insert into another file, thanks!
# 2  
Old 12-04-2006
nawk -f fredao.awk file1

fredao.awk:

Code:
{
   gsub("..", "&:",$1)
   gsub(":$", "",$1)

   printf("host {\nhardware ethernet %s;\nfixed-address %s;\n}\n", $1, $3)
}


Last edited by vgersh99; 12-04-2006 at 04:10 PM.. Reason: fixed printf for the IPaddress
# 3  
Old 12-05-2006
Code:
sed "s/..\(..\)\(..\)\(..\)\(..\)\(..\)\(..\)....\([^ ]*\).*/host {\\
hardware ethernet \1:\2:\3:\4:\5:\6;\\
fixed-address \7;\\
}/w file2" file


Last edited by anbu23; 12-05-2006 at 02:07 AM..
# 4  
Old 12-05-2006
Quote:
Originally Posted by anbu23
Code:
sed "s/..\(..\)\(..\)\(..\)\(..\)\(..\)\(..\)....\([^ ]*\).*/host {\\
hardware ethernet \1:\2:\3:\4:\5:\6;\\
fixed-address \7;\\
}/w file2" file


there seems to be a little problem, as I ONLY want to extract the first and 3rd field for each line.
# 5  
Old 12-05-2006
Python alternative
Code:
#!/usr/bin/python
o = open("file2.txt","a")
for line in open("input.txt"):
 	splitted = line.split()
 	mac, ip = splitted[0] , splitted[2]
 	out = """
 	host {
		hardware ethernet %s;
		fixed-address %s;
	      }
 	""" %(mac,ip)
 	o.write(out + "\n")
o.close()

# 6  
Old 12-06-2006
Quote:
Originally Posted by vgersh99
nawk -f fredao.awk file1

fredao.awk:

Code:
{
   gsub("..", "&:",$1)
   gsub(":$", "",$1)

   printf("host {\nhardware ethernet %s;\nfixed-address %s;\n}\n", $1, $3)
}

My enviroment doesn't have nawk, can this be done with awk? thanks!
# 7  
Old 12-06-2006
Quote:
Originally Posted by fredao
My enviroment doesn't have nawk, can this be done with awk? thanks!
wouldn't hurt tryin'......
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Insert content from file 1 to file 2 in specific criteria meet

Hi , I'm looking for some code that can copy and paste form file1 to file2 with 2 criterial meet. file1: test "sp-j1" test "sp-j2" test "sp-j3" test "sp-j4" file2: sub Pre_Shorts1 (Status_Code, Message$) global Status !if Message$ <> "" then print... (3 Replies)
Discussion started by: kttan
3 Replies

2. Shell Programming and Scripting

Insert content of a file right after pattern in another file

suppose i have original file: original.txt: hello how are you you are wonderful what time is it I went to the store last night. and some apple juice then i have another file: anotherfile.txt: with my friends mary, john and harry. We had a great time. We bought food Suppose... (1 Reply)
Discussion started by: SkySmart
1 Replies

3. Shell Programming and Scripting

Insert content of file before the first occurrence of a line starts with a pattern in another file

Hi all, I'm new to scripting.. facing some problems while inserting content of a file into another file... I want to insert content of a file (file2) into file1, before first occurrence of "line starts with pattern" in file1 file1 ====== working on linux its unix world working on... (14 Replies)
Discussion started by: Jagadeesh Kumar
14 Replies

4. Shell Programming and Scripting

Insert content of a file to another file at a line number which is given by third file

Hi friends, here is my problem. I have three files like this.. cat file1.txt ======= unix is best unix is best linux is best unix is best linux is best linux is best unix is best unix is best cat file2.txt ======== Windows performs better Mac OS performs better Windows... (4 Replies)
Discussion started by: Jagadeesh Kumar
4 Replies

5. Shell Programming and Scripting

Insert content of a file into another file before given pattern

I need to insert file x2 into x1 right before first BBB line. $ cat x1 AAA 1 AAA 2 AAA 3 BBB 1 BBB 2 BBB 3 $ cat x2 XXX - insert 1 XXX - insert 2 I need to get AAA 1 AAA 2 AAA 3 XXX - insert 1 XXX - insert 2 BBB 1 (2 Replies)
Discussion started by: migurus
2 Replies

6. Shell Programming and Scripting

Shell Script to Dynamically Extract file content based on Parameters from a pdf file

Hi Guru's, I am new to shell scripting. I have a unique requirement: The system generates a single pdf(/tmp/ABC.pdf) file with Invoices for Multiple Customers, the format is something like this: Page1 >> Customer 1 >>Invoice1 + invoice 2 >> Page1 end Page2 >> Customer 2 >>Invoice 3 + Invoice 4... (3 Replies)
Discussion started by: DIps
3 Replies

7. Programming

[SQL] Insert content file to mysql

dear all, i want to insert string in file to mysql i just want how to do that cause i am poor in sql languages ... so this file like this DATA.txt doni|student|westjava|123412|lombok| iwan|student|westjava|1234412|utankayu| rio|student|westjava|12342|cempedak| so i want insert DATA.txt to... (2 Replies)
Discussion started by: zvtral
2 Replies

8. Shell Programming and Scripting

Insert content of a file after a certain line in another file

Hi, it's my first post to this forum. I just started bash and I'm stuck at one issue. I want to include content of a file in another file after a certain line. I'm using sed for inserting one line but how to insert all content of a file ? For example i have a file list.txt with a few lines and... (4 Replies)
Discussion started by: ktm
4 Replies

9. Shell Programming and Scripting

Insert file content via sed after two searchings

Hi folks, The file webcache.xml contains a lot sections which begins and ends with the string </CACHEABILITYRULE>. The section In need to deel with is: </CACHEABILITYRULE> <CACHEABILITYRULE NAME="cache swf" CACHE="YES" COMMENT="This rule caches all .swf files. This... (2 Replies)
Discussion started by: nir_s
2 Replies
Login or Register to Ask a Question