Sponsored Content
Top Forums Shell Programming and Scripting Manipulate lines with sed/awk Post 302329749 by TheBigAmbulance on Monday 29th of June 2009 10:19:28 AM
Old 06-29-2009
Manipulate lines with sed/awk

Hey All,

I need to reorganize a file's text. Here is the source:

host John_Doe
filename "config.cfg";
hardware ethernet 98:10:3d:13:8f:98;
fixed-address 10.10.10.29;
}
host Jane_Doe
filename "config.cfg";
hardware ethernet 98:13:11:fd:5a:57;
fixed-address 10.10.5.24;
}
host Jim_Doe
filename "config.cm";
hardware ethernet 98:10:3d:13:8c:6c;
fixed-address 10.10.7.53;
}
host Cookie_Monster
filename "config.cfg";
hardware ethernet 98:10:3d:13:8f:9e;
fixed-address 10.10.10.30;
}
host Big_Bird
filename "config.cfg";
hardware ethernet 98:13:11:fd:77:e8;
fixed-address 10.10.6.63;
}



What I need it to look like is this:

host John_Doe {hardware ethernet 98:10:3d:13:8f:98;
fixed-address 10.10.10.29;
filename "config.cfg";}
# -
# -
# -
# -
# -@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-
host Jane_Doe {hardware ethernet 98:13:11:fd:5a:57;
fixed-address 10.10.5.24;
filename "config.cfg";}
# -
# -
# -
# -
# -@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-
host Jim_Doe {hardware ethernet 98:10:3d:13:8c:6c;
fixed-address 10.10.7.53;
filename "config.cm";}
# -
# -
# -
# -
# -@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-
host Cookie_Monster {hardware ethernet 98:10:3d:13:8f:9e;
fixed-address 10.10.10.30;
filename "config.cfg";}
# -
# -
# -
# -
# -@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-
host Fred_Flintstone {hardware ethernet 98:13:11:fd:77:e8;
fixed-address 10.10.6.63;
filename "config.cfg";}
# -
# -
# -
# -
# -@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-@@@-

The part I am not able to figure out is how to get the manipulator (sed/awk) to move lines up and down in a file. I can figure out substitution and adding lines below or above certain other lines.

Could anyone give me a couple of pointers?

TIA
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

sed or other tool to manipulate data, including email addresses

I have a list of names and email addresses, like this. The <tab> markers are actually tabs. joe.blow <tab> joe.blow@wherever.com tom.t.hall <tab> tom.t.hall@wherever.com john.r.smith <tab> john.r.smith@wherever.com sally.jones <tab> sally.jones@state.or.us I want to parse the data so that... (3 Replies)
Discussion started by: manouche
3 Replies

2. UNIX for Dummies Questions & Answers

using sed to manipulate text in files

Hi, I have a slight problem in trying to manipulate the text within a file using the "sed" command in that the text i need changed has "/" slashes in. I have a .sh script that scans the "/db/sybbackup/" directories for any .dmp file older than 2 days and then to >> the information to a file called... (3 Replies)
Discussion started by: Jefferson333
3 Replies

3. Shell Programming and Scripting

Sed command to find, manipulate and replace a number

Hi, Im very new to the world of sed so I'm really not even sure if this is possible. What i need to do is read from a flat file and every time i see this line: VAL=123,456 I need to change 456 to 457 for every occurence of this line in the file. The numbers 123 and 456 are different for... (6 Replies)
Discussion started by: LT_2008
6 Replies

4. Shell Programming and Scripting

RE or Sed to manipulate a document

I have a file with a list of about 2500 lines that I'd like to reformat using some regex in notepad++ or sed from my box (FreeBSD 6.3-RELEASE i386) to do the following: convert from: mycommand > mydocument0.htmlbcfn mycommand > mydocument1.htmlcdcsfn mycommand > mydocument2.htmldechfn... (6 Replies)
Discussion started by: phpfreak
6 Replies

5. Shell Programming and Scripting

manipulate postscript via sed

dear all, on solaris10 for x86 i am trying to modify the creation date of a postscript file with sed in a csh script. sed is driving me crazy though...i think due to the spaces in the string i am trying to substitute?? part of the postscript file: %!PS-Adobe-3.0... (3 Replies)
Discussion started by: lada niva
3 Replies

6. Shell Programming and Scripting

how to manipulate with lines while playing with data

hello everyone, well I have a file which contains data, I want to add the data on hourly basis, like my file contains data for 24 hours, (so a total of 1440 ) lines. Now i want to add the data on hourly basis to get average values. like if I use (head) command it is ok for first go, but... (5 Replies)
Discussion started by: jojo123
5 Replies

7. Shell Programming and Scripting

sed script to manipulate the /etc/passwd file

Hi. Can anybody help me with a script to extract usernames, shell and home_directory from the /etc/passwd file. I am stuck (2 Replies)
Discussion started by: Pauline mugisha
2 Replies

8. Shell Programming and Scripting

Manipulate columns using sed

Hello, I would like to remove the first column of lines beginning by a character (in my case is an open square bracket) and finishing by a space (or any other delimiter). For example: string1 string2 string3 to string2 string3 I found this previous topic: ... (1 Reply)
Discussion started by: stoyanova
1 Replies

9. Shell Programming and Scripting

Sed/awk to delete single lines that aren't touching other lines

Hello, I'm trying to figure out how to use sed or awk to delete single lines in a file. By single, I mean lines that are not touching any other lines (just one line with white space above and below). Example: one two three four five six seven eight I want it to look like: (6 Replies)
Discussion started by: slimjbe
6 Replies

10. Shell Programming and Scripting

Summing over specific lines and replacing the lines with the sum using sed, awk

Hi friends, This is sed & awk type question. I have a text file which has numbers spread all over the file. I want to sum the series of numbers whenever i find it and produce an output file with the sum. For example ###start of input text file #### abc def ghi 1 2 3 4 kjld random... (3 Replies)
Discussion started by: kaaliakahn
3 Replies
DHCPING(8)						      General Commands Manual							DHCPING(8)

NAME
dhcping - send a DHCP request to DHCP server to see if it's up and running SYNOPSIS
dhcping [-v] [-q] [-i] [-r] -t maxwait -c client-IP-address -s server-IP-address -h client-hardware-address [-g gateway-IP-address] DESCRIPTION
This command allows the system administrator to check if a remote DHCP server is still functioning. Options are: -v Verbose, print some information. -i Use DHCPINFORM packets. -r Use DHCPREQUEST packets (default behaviour). -q Quiet, print nothing on the screen. -t maxwait Maximum time to wait for an answer from the server in seconds. Default is 3 seconds. -c client-IP-address Request this IP address. Note that this is also the IP address the answer will be sent to. -s server-IP-address Send the DHCP packet to this IP address. -h client-hardware-address Use this hardware-address in the DHCP request. It can be up to sixteen octets seperated by colons (i.e. 01:02:03:04) -g gateway-IP-address Use this IP address for the gateway IP address in the DHCP packet. This option is currently broken. RETURN VALUES
If everything goes okay, it returns 0. If there went something wrong, it returns 1. SETUP
This program should be installed setuid root or ran by root only. See SECURITY for more information. On your DHCP server, add these lines to the dhcpd.conf: host <your monitoring host FQDN> { hardware ethernet <your monitor host mac address>; fixed-address <your monitoring host IP address>; } Then try it: $ dhcping -c your monitoring host IP address -s your DHCP server IP address -h your monitor host mac address It will either respond with "no answer" or "Got answer from: your DHCP server IP address" The DHCP server logfile will give: DHCPREQUEST for 192.168.1.1 from 00:20:18:56:29:8f via ed0 DHCPACK on 192.168.1.1 to 00:20:18:56:29:8f via ed0 DHCPRELEASE of 192.168.1.1 from 00:20:18:56:29:8f via ed0 (found) Running in DHCPINFORM mode with -i: If you see "DHCPINFORM from 192.168.1.1 via xl0: not authoritative for subnet 192.168.1.0", you should add the authoritative statement to the subnet, See dhcpd.conf(5) for details. When running in very verbose mode, dhcping tries to dump all data of the send and received DHCP packets. It will first dump the packet in hex-format, then decodes the header and finally the options. HOW IT WORKS
The client either sends a DHCPREQUEST or DHCPINFORM packet to the server and waits for an answer. Then, if a DHCPREQUEST was send, it will send a DHCPRELEASE back to the server. SECURITY
This program is installed setuid root as it requires the privileges to bind itself to port 68 (bootpc). Root privileges are dropped as soon as the program has bound itself to that port. BUGS
Currently (this may, or may not, change in the future) the ISC DHCP daemon does not write leases with a fixed IP address in the dhcpd.leases file. DHCPINFORM packets can only be used on subnets the server is authori- tative for. If the monitoring script runs on a subnet the server isn't authoritative for, it should use the DHCPREQUEST packets. I also experienced some problems with ISC DHCPD v2 servers, but that is also in the README of it. The -V option is still working, but shouldn't be used for debugging of the packets. Better use dhcpdump(8) for that, which is available on my website. I wanted to remove it, but decided only to do it from the documentation, not from the code. Maybe I'll need it one day for debugging. AUTHOR
Edwin Groothuis, edwin@mavetju.org (http://www.mavetju.org) SEE ALSO
dhcpd(8), dhclient(8), dhcpd.conf(5), dhcpdump(8) Januari 27, 2002 Januari 27, 2002 DHCPING(8)
All times are GMT -4. The time now is 01:22 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy