First, you can't have an if statement in an awk condition; if statements can be placed in BEGIN clauses, END clauses, actions, and in function definitions.
Second, you don't associate END clauses with input lines either. All END sections in a awk script are processed in the order in which they were found in the script after all input lines have been read.
Why don't you start over and tell us what this script is supposed to do and show us some sample input and desired output?
This User Gave Thanks to Don Cragun For This Post:
What you are trying to do with OK, WARNING, and CRITICAL isn't at all clear. Showing us input that has nothing to be classified as OK or WARNING makes it difficult to guess what output you're trying to produce. And, using one variable (c) to store three different values can't work. I also note that the code you supplied produces the output:
with a 2 at the end; not the 1 that you said it produced. Looking at the code you have here and in your first post in this thread, it appears that if field 3 is less than 2, you want to that line to be considered as OIK; if field 3 is 2 or 3, you want that line to be treated as a warning; and if field 3 is greater than or equal to 4, you want that line to be treated as critical. Your sample input has two lines, one with field 3 set to 4 and one with field 3 set to 5; both of which you seem to want to be treated as critical, but you say you want the output to be 1:OK instead of 2:CRITICAL???
Making lots of wild guesses, maybe the following will provide some insight that will help you figure out what will work for what you want to do:
which, with your sample input file produces the output:
This User Gave Thanks to Don Cragun For This Post:
i have a php file that has this:
php.code
#!/usr/bin/php
<?php
phpinfo();
hlight_file(__FILE__);
?>
I want my awk code grab whatever is inbetween and including the "<?php" and "?>".
Then, it should scan all the entries between these two points. And if the entries between these... (10 Replies)
Hi,
I have to modify the 2nd and 3rd octet of the IP address through awk/sed.
For Example:
Given IP is : 10.205.22.254, it should be modified as 10.105.100.254 through awk/sed.
Kindly help me on this and let me know if you have any questions.
Thanks in advances. (2 Replies)
Hello,
I am using awk command to print some output, but there are some characters that I would like to remove from the output
awk '{print $5$6}'
the output I get is
column5/:column6
I am looking forward to remove the : and to get the output
column5/column6
Sorry if this question is... (4 Replies)
so i have this data in a file:
jime=1860,yime=1.23243,lime=
jime=1859,yime=1.23018,lime=
jime=1825,yime=1.15371,lime=
jime=1849,yime=1.20769,lime=
jime=1841,yime=1.1897,lime=
jime=1849,yime=1.20769,lime=
i use this code to calculate the percentage difference of the number in column 2... (9 Replies)
I want the below script to omit every chunk of data that contains a specific hostname.
here's the scenario. i have a configuration file that contains the configuration of several hosts. a sample of this configuration file is this:
define host {
address ... (12 Replies)
I need help modifying the code below.
DATAFILE is a log file.
I have two strings i need to search for in the log file.
The two strings are:
1. ERROR
2. com.rolander.promotions.client
awk 'BEGIN {
while((getline < "'${SFILE}'")>0)
S
FS="\n"; RS="\n"
} (11 Replies)
Hi,
I have a conf.file with the following values:
ef=78
b=40
ca=40
c=45/dev2
when I modify one of the line with the below awk script,it's modifying BUT it's placing the modified line in the last line :
input:- Configure b 45/dev4
output:-
ef=78
ca=40
... (2 Replies)
Hi All
I have files contains rows which look like this:
2 20090721_16:58:47.173 JSUD2 JD1M1 20 IAM 966591835270 249918113182 b 3610 ACM b 3614 ACM b 3713 CPG b 3717 CPG f 5799 REL b 5815 RLC b 5817 RLC :COMMA: NCI=00,FCI=6101,CPC=0A,TMR=00,OFI=00,USI: :COMMB: BCI=1234: :RELCAUSE:10:
... (1 Reply)
i have the following perl script.but it searches for a given filename.
i want to run the same script in my directoy which has subdirectories too and it has to display the file if sreach satisfies along with directory name.
can anyone help me:
perl script:
my $FILE = $ARGV;
for zf in... (4 Replies)