02-01-2006
sed: find match and delete the line above
I am searching a dhcpd.conf to find the hardware ethernet match, then once the match is found delete just the line above it. For example:
testmachine.example {
hardware ethernet 00:00:00:00:00:00;
fixed address 192.168.1.100;
next-server 192.168.1.101;
filename "linux-install/pxelinux.0";
}
I would like to use sed to remove "testmachine.example {".
I was going to create a two step process by removing the line above the harware ethernet match. Then remove the hardware ethernet match through }. However, if someone knows how to find the harware ethernet match and remove the whole block, I would be very appreciative.
There are multiple fixed addresses in this file, so it can only remove this block based on the hardware ethernet match.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi,
I need help with using an awk or sed filter on the below line
ALTER TABLE "ACCOUNT" ADD CONSTRAINT "ACCOUNT_PK" PRIMARY KEY ("ACCT_ID") USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1) TABLESPACE "WMC_DATA" LOGGING ENABLE
Look for... (2 Replies)
Discussion started by: rajan_san
2 Replies
2. UNIX for Advanced & Expert Users
Hi,
I need help with using an awk or sed filter on the below line
ALTER TABLE "ACCOUNT" ADD CONSTRAINT "ACCOUNT_PK" PRIMARY KEY ("ACCT_ID") USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE(INITIAL 65536 FREELISTS 1 FREELIST GROUPS 1) TABLESPACE "WMC_DATA" LOGGING ENABLE
Look for... (1 Reply)
Discussion started by: rajan_san
1 Replies
3. Shell Programming and Scripting
hi,
i am parsing a file, in that searching for lines those contains "$threadNo.Received message:" , if that line contains the required fields write them into a separate file other wise ignore them.
i am using the following code,but it is printing all the lines , i dont want to rpint , please help... (3 Replies)
Discussion started by: Satyak
3 Replies
4. Shell Programming and Scripting
trying to use sed in finding a matching pattern in a file then deleting
the next line only .. pattern --> <ad-content>
I tried this but it results are not what I wish
sed '/<ad-content>/{N;d;}' akv.xml > akv5.xml
ex,
<Celebrant2First>Mickey</Celebrant2First>
<ad-content>
Minnie... (2 Replies)
Discussion started by: aveitas
2 Replies
5. Shell Programming and Scripting
I have the following file:
line1
line2
MATCH
line3
line4
I need to find the pattern, "MATCH" and delete the line before and after MATCH. So the result should be
line1
MATCH
lline4
I have to use sed because it is the only utility that is common across my environments. I... (1 Reply)
Discussion started by: craftereric
1 Replies
6. Shell Programming and Scripting
I've got a report I need to make easier to read Using sh on HP-UX 11.12.
In short, I want to search for a regular expression and when found, examine the next line to see if it's blank. If so, then delete both lines. If not blank, move on to the next regexp. Repeat.
So far I've got:
... (7 Replies)
Discussion started by: Scottie1954
7 Replies
7. Shell Programming and Scripting
Hi folks,
I've list of LDAP records in this format:
cat cmmac.export.tmp2
dn: deviceId=0a92746a54tbmd34b05758900131136a506,ou=devices,ou=customer,ou=nl,o=upc
cmmac: 00:13:11:36:a5:06
dn: deviceId=0a92746a62pbms4662299650015961cfa23,ou=devices,ou=customer,ou=nl,o=upc
cmmac:... (4 Replies)
Discussion started by: tomas.polak
4 Replies
8. Shell Programming and Scripting
All,
I am trying to read in a variable and search a file then delete based on that string, but i want to match exact word.
This works but it matches all, i don't want to match anthing that contains the string, just the exact string.
sed -i "/$feedname/d" file
I tried
sed... (1 Reply)
Discussion started by: markdjones82
1 Replies
9. Shell Programming and Scripting
Hi,
How to delete the last line if is match the below string else no action...
String checking "END OF FILE. ROW COUNT: "
9f680174-cb87-4f71-887a-93b6f62fa5aa|20077337254|2
9f680174-cb87-4f71-887a-93b6f62fa5aa|20077337254|0
229f680174-cb87-4f71-887a-93b6f62fa5aa|20077337254|3
END OF... (2 Replies)
Discussion started by: bmk
2 Replies
10. Shell Programming and Scripting
I am using following sed rule to delete 2 lines after a pattern match inclusive.
# cat /tmp/temp.txt
dns.com
11
22
mydns.com
11
22
dns.com.au
11
22
LAST LINE
# cat /tmp/temp.txt | sed -e '/dns.com/,+2d'
LAST LINE
I just need to remove lines below dns.com only and NOT below... (5 Replies)
Discussion started by: anil510
5 Replies
LEARN ABOUT MOJAVE
ether_hostton
ETHERS(3) BSD Library Functions Manual ETHERS(3)
NAME
ethers, ether_line, ether_aton, ether_ntoa, ether_ntohost, ether_hostton -- Ethernet address conversion and lookup routines
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <sys/types.h>
#include <sys/socket.h>
#include <net/ethernet.h>
int
ether_line(const char *l, struct ether_addr *e, char *hostname);
struct ether_addr *
ether_aton(const char *a);
char *
ether_ntoa(const struct ether_addr *n);
int
ether_ntohost(char *hostname, const struct ether_addr *e);
int
ether_hostton(const char *hostname, struct ether_addr *e);
DESCRIPTION
These functions operate on ethernet addresses using an ether_addr structure, which is defined in the header file <netinet/if_ether.h>:
/*
* The number of bytes in an ethernet (MAC) address.
*/
#define ETHER_ADDR_LEN 6
/*
* Structure of a 48-bit Ethernet address.
*/
struct ether_addr {
u_char octet[ETHER_ADDR_LEN];
};
The function ether_line() scans l, an ASCII string in ethers(5) format and sets e to the ethernet address specified in the string and h to
the hostname. This function is used to parse lines from /etc/ethers into their component parts.
The ether_aton() function converts an ASCII representation of an ethernet address into an ether_addr structure. Likewise, ether_ntoa() con-
verts an ethernet address specified as an ether_addr structure into an ASCII string.
The ether_ntohost() and ether_hostton() functions map ethernet addresses to their corresponding hostnames as specified in the /etc/ethers
database. ether_ntohost() converts from ethernet address to hostname, and ether_hostton() converts from hostname to ethernet address.
RETURN VALUES
ether_line() returns zero on success and non-zero if it was unable to parse any part of the supplied line l. It returns the extracted ether-
net address in the supplied ether_addr structure e and the hostname in the supplied string h.
On success, ether_ntoa() returns a pointer to a string containing an ASCII representation of an ethernet address. If it is unable to convert
the supplied ether_addr structure, it returns a NULL pointer. Likewise, ether_aton() returns a pointer to an ether_addr structure on success
and a NULL pointer on failure.
The ether_ntohost() and ether_hostton() functions both return zero on success or non-zero if they were unable to find a match in the
/etc/ethers database.
NOTES
The user must insure that the hostname strings passed to the ether_line(), ether_ntohost() and ether_hostton() functions are large enough to
contain the returned hostnames.
NIS INTERACTION
If the /etc/ethers contains a line with a single + in it, the ether_ntohost() and ether_hostton() functions will attempt to consult the NIS
ethers.byname and ethers.byaddr maps in addition to the data in the /etc/ethers file.
SEE ALSO
yp(8), ethers(5)
BUGS
The ether_aton() and ether_ntoa() functions returns values that are stored in static memory areas which may be overwritten the next time they
are called.
HISTORY
This particular implementation of the ethers library functions were written for and first appeared in FreeBSD 2.1.
BSD
April 12, 1995 BSD