10-03-2008
Negate gawk search
Hi,
I am using the under-noted script to search the "MYPATTERN" in MYFILE and print that block of lines containing the pattern starting with HEADER upto FOOTER.
Please help me what to put in script to negate the search i.e. not to print those blocks meeting the search criteria.
gawk -v search='MYPATTERN' '
/HEADER/,/FOOTER/ {
block = (block ? block ORS : "") $0;
}
/FOOTER/ {
if (block ~ search)
print block;
block = "";
} ' <MYFILE>
Thnx in advance.
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I have a text file that has links in it.
I can write a match for sed to replace the link with anything.
For example:
http://www.google.com
becomes
XxX
But what I'm after is not to replace the link with something but to remove everything else and just leave the link. I want a... (5 Replies)
Discussion started by: muxman
5 Replies
2. Shell Programming and Scripting
Hi Every one
I have a file in the following manner...
AAAAAA*PERFORM WRITEQ
BBDFDD*PERFOMF WRITEQ
FFFF *PERFOMF WRITEQ
i want to find the lines which donot have * in 7th position..
I have tried this but some problem i think...
grep '......*WRITEQ' INpFIle...
any 6 chars not... (7 Replies)
Discussion started by: pbsrinivas
7 Replies
3. Shell Programming and Scripting
I working fine with following statement -
sed '/search_pattern/ s/pattern1/pattern2/' file_name
requirement changes , now i want negate the search something like -
sed '! /search_pattern/ s/pattern1/pattern2/' file_name (this doesn't work)
anybody can plz tell the correct syntax... (2 Replies)
Discussion started by: ajitkumar2
2 Replies
4. Shell Programming and Scripting
Hi, I've tried a lot of negate codes in this forum, but they do not perform what I intended. Please help.
inputfile:
Paragraph1 contents: die1, die2, die3, pr_name1, pr_name2
pr_name3, pr_name4
Paragraph2 more contents: die1, die2, die3, pr_name1, pr_name2
pr_name3, pr_name4
... (5 Replies)
Discussion started by: shamushamu
5 Replies
5. Shell Programming and Scripting
Hi All...
I have a script that checks for any problems(particularly looks for 'Needs Maintenance') with metadevices and alerts accordingly. This was not configured to alert for a particular metadevice. Now i want to negate alerting for a particular metadevice(say d40). Is this possible? I am... (6 Replies)
Discussion started by: reddybs
6 Replies
6. Shell Programming and Scripting
Im trying to parse ifconfig with awk and setup a bunch of variables in one shot. But Im having trouble figuring out how to work with data in previous lines.
ifconfig output:
eth0 Link encap:Ethernet HWaddr 00:50:DA:10:7F:1B
inet addr:10.10.10.10 Bcast:10.10.10.127 ... (0 Replies)
Discussion started by: trey85stang
0 Replies
7. Shell Programming and Scripting
Hi
I am new to unix and newbie to this forum. I need help in writing a gawk script that search and replace particular text in a flat file.
Input file text :
ZIDE_CONTROL000 100000000003869920900000300000001ISYNC 000002225489 0000000002232122 20120321 16:40:53
ZIDE_RECORD000... (5 Replies)
Discussion started by: gkausmel
5 Replies
8. Shell Programming and Scripting
I am using GAWK to search for a specific pattern:
gawk '{IGNORECASE=1;} /<a href=/&&/\$/,/<\/a/' index.html
<a class=author href="http://washingtondc.craigslist.org/search/?areaID=10&amp;catAbb=sss&amp;query=ps vita" title="craigslist washington, DC | all fo
r sale / wanted search "ps... (1 Reply)
Discussion started by: metallica1973
1 Replies
9. Shell Programming and Scripting
Example:
I have data like,
H|1|2|#||4|4|5|6
D|f|g|h|j|j|k|k|
D|f|g|h|j|j|k|k|
D|f|g|h|j|j|k|k|
D|f|g|h|j|j|k|k|
D|f|g|h|j|j|k|k|
T|g|g|G|G|g|g|
T|g|g|G|G|g|g|
I have to write command, it should delete all the lines except line starting with "D".
I have tried sed '/^\(D\)|/!d'... (2 Replies)
Discussion started by: duplicate
2 Replies
10. Shell Programming and Scripting
Hi All,
New to this forum (and yes , a newbie in programming..:p)
I have a decimal to binary converter script done this way :
i=$1
bit0=$(( (i & 0x01) > 0 ))
bit1=$(( (i & 0x02) > 0 ))
bit2=$(( (i & 0x04) > 0 ))
bit3=$(( (i & 0x08) > 0 ))
bit4=$((... (6 Replies)
Discussion started by: digiteltlc
6 Replies
GREP(1) General Commands Manual GREP(1)
NAME
grep - search a file for a pattern
SYNOPSIS
grep [ option ... ] pattern [ file ... ]
DESCRIPTION
Grep searches the input files (standard input default) for lines (with newlines excluded) that match the pattern, a regular expression as
defined in regexp(6). Normally, each line matching the pattern is `selected', and each selected line is copied to the standard output.
The options are
-c Print only a count of matching lines.
-h Do not print file name tags (headers) with output lines.
-i Ignore alphabetic case distinctions. The implementation folds into lower case all letters in the pattern and input before interpre-
tation. Matched lines are printed in their original form.
-l (ell) Print the names of files with selected lines; don't print the lines.
-L Print the names of files with no selected lines; the converse of -l.
-n Mark each printed line with its line number counted in its file.
-s Produce no output, but return status.
-v Reverse: print lines that do not match the pattern.
Output lines are tagged by file name when there is more than one input file. (To force this tagging, include /dev/null as a file name
argument.)
Care should be taken when using the shell metacharacters $*[^|()= and newline in pattern; it is safest to enclose the entire expression in
single quotes '...'.
SOURCE
/sys/src/cmd/grep.c
SEE ALSO
ed(1), awk(1), sed(1), sam(1), regexp(6)
DIAGNOSTICS
Exit status is null if any lines are selected, or non-null when no lines are selected or an error occurs.
GREP(1)