Sponsored Content
Top Forums Shell Programming and Scripting Check numeric fields greater than zero, and delete lines if appropriate Post 302370337 by Yorkie99 on Wednesday 11th of November 2009 06:00:05 AM
Old 11-11-2009
Check numeric fields greater than zero, and delete lines if appropriate

This be the latest in my problems sorting through router logs... I'm half way there on a problem, but I've hit the limitation of my knowledge

Got some router interface log files of type

Code:
router01:GigabitEthernet9/24 is up, line protocol is up (connected)
router01: 0 input errors, 0 CRC, 0 frame, 19 overrun, 0 ignored
router01:GigabitEthernet10/1 is up, line protocol is up (connected)
router01: 0 input errors, 0 CRC, 5 frame, 0 overrun, 0 ignored
router01:GigabitEthernet10/2 is up, line protocol is up (connected)
router01: 0 input errors, 0 CRC, 3 frame, 0 overrun, 0 ignored
router01:GigabitEthernet10/5 is up, line protocol is up (connected)
router01: 0 input errors, 0 CRC, 2 frame, 0 overrun, 0 ignored
router01:GigabitEthernet10/6 is up, line protocol is up (connected)
router01: 0 input errors, 0 CRC, 2 frame, 0 overrun, 0 ignored
router01:GigabitEthernet10/9 is up, line protocol is up (connected)
router01: 6297 input errors, 6297 CRC, 6298 frame, 0 overrun, 0 ignored
router01:GigabitEthernet10/10 is up, line protocol is up (connected)
router01: 0 input errors, 0 CRC, 1 frame, 0 overrun, 0 ignored
router01:GigabitEthernet10/14 is up, line protocol is up (connected)
router01: 0 input errors, 0 CRC, 1 frame, 0 overrun, 0 ignored

I don't care about frame errors or ignored errors, but I do want to take account of input errors, CRC errors and overrun errors, so I want to keep those lines (and the line above them) where those parameters are non zero, and I want to delete those lines where the important parameters are 0, and the lines above them. So... for the input above... I want the output to be

Code:
router01:GigabitEthernet9/24 is up, line protocol is up (connected)
router01: 0 input errors, 0 CRC, 0 frame, 19 overrun, 0 ignored
router01:GigabitEthernet10/9 is up, line protocol is up (connected)
router01: 6297 input errors, 6297 CRC, 6298 frame, 0 overrun, 0 ignored

I'm thinking the way to do it is to sort for lines with the string "input errors", and check if the second, or fifth, or ninth parameters are non zero, and if so keep that line and the line above it, otherwise delete the line and the line above it.

I'm doing this on ubuntu... (may or may not be relevant)

Last edited by Franklin52; 11-11-2009 at 07:05 AM.. Reason: Please use code tags!
 

10 More Discussions You Might Find Interesting

1. Programming

check the given string is numeric or not.

Hi, how to check the given string is numeric or not , without converting ( using strtol...). for ex: if string is C01 - non-numeric data if string is 001 - numeric data TIA (11 Replies)
Discussion started by: knowledge_gain
11 Replies

2. Shell Programming and Scripting

Select lines in which column have value greater than some percent of total file lines

i have a file in following format 1 32 3 4 6 4 4 45 1 45 4 61 54 66 4 5 65 51 56 65 1 12 32 85 now here the total number of lines are 8(they vary each time) Now i want to select only those lines in which the values... (6 Replies)
Discussion started by: vaibhavkorde
6 Replies

3. Shell Programming and Scripting

How to check for a Numeric Value?

Using shell, I have a variable, how can I check that variable for a numeric value such as "41.0"? My program needs to do one things if the numeric value is found, and another if something else such as a string of letter is found. is there a specific character that denotes a numeral? The... (2 Replies)
Discussion started by: chagan02
2 Replies

4. Shell Programming and Scripting

Delete words greater than a specific length

HI All, I have a file with contents like this: apple computer terminal applecomputernetworkrouterterminalrouter network router applecomputernetworkrouterterminalrouter I want to remove all lines with length greater than "18 alphabets". Hence, my output should be: apple computer... (1 Reply)
Discussion started by: shoaibjameel123
1 Replies

5. Shell Programming and Scripting

search column and delete row if greater than value

Hi, as the title states i need to find a way to search a column for values great than 1000, and if it is, then delete that row. An example 1 7.021 6.967 116.019 4 U 6.980E+07 0.000E+00 e 0 0 0 0 2 8.292 7.908 118.063 3 U 1.440E+07 0.000E+00 e 0 821 814 ... (3 Replies)
Discussion started by: olifu02
3 Replies

6. UNIX for Dummies Questions & Answers

check if a decimal number is greater than zero

Hello, In my code I am checking to see if a variable that contains a decimal number is greater than 0 in the following manner: if do something fi However I am getting the error message (if $i for the current iteration holds 9.6352) command 9.6352 is not found How can I rectify... (5 Replies)
Discussion started by: Gussifinknottle
5 Replies

7. Shell Programming and Scripting

To perform sum aggregation on numeric fields

Hi all, I have following scenario to perform sum aggregation on certain columns Node Allocated_Space Pool_Name CS_Group Utilized Space -------- ---------------- ---------- --------- -------------- bdw1a_lun01 300 bdw_p0 ... (2 Replies)
Discussion started by: ckwan
2 Replies

8. Shell Programming and Scripting

Need to check the value greater than or less than and give out put to a file

HI, I have one file which is as below cat /var/tmp/test1 | awk '{ print $3}'|grep -v affected Data ---------- 200.4 . The above 200 value is changable by the database script. Now I need a script that checks the value 200.4 and the script shoud give out put if value is more than 225 (2 Replies)
Discussion started by: phani4u
2 Replies

9. How to Post in the The UNIX and Linux Forums

Very Urgent ---Need to delete the log files when the disk used% greater than 85% using df -k*

Hi, I am new to Shell scripts. I have an urgent requirement to find the disk space using "df -k". from that output,I need to check the used% whether greater than 85%. if it is greater than 85% then need to delete my log files. It is very urgent please some one help me. Thanks in Advance... (1 Reply)
Discussion started by: Anandbarnabas
1 Replies

10. Shell Programming and Scripting

Need to delete the log files when the disk used% greater than 85% using df -k

Hi, I am new to Shell scripts. I have an urgent requirement to find the disk space using "df -k". from that output,I need to check the used% whether greater than 85%. if it is greater than 85% then need to delete my log files. It is very urgent please some one help me. Thanks in Advance... (2 Replies)
Discussion started by: Anandbarnabas
2 Replies
map-mbone(1M)															     map-mbone(1M)

NAME
map-mbone - Multicast Router Connection Mapper SYNOPSIS
debuglevel] retries] timeout] [multicast-router] DESCRIPTION
requests the multicast router connection information from the multicast-router, and prints the information to the standard out. sends out the ASK_NEIGHBORS igmp message to the multicast-router. When the multicast-router receives the request, it sends back its configuration information. multicast-router can be either an ip address or a system name. If the multicast-router is not specified, flood mode is on by default and the igmp request message is sent to all the multicast router on the local network. With flood mode on, when finds new neighbor routers from the replies, it will send the same igmp request to the new neighbor routers. This activity continues until no new neighbor routers are reported in the replies. The command line options are: Sets the level for printing out the debug message. The default is 0, which prints only error and warning messages. Debug level three prints most the messages. Sets the retry times to poll the routing daemon for information. The default is 1. It specifies the timeout value in seconds for waiting the reply. The default value is 2 seconds. Sets the flood mode on. It is the default value when no multicast-router is given on the command line input. Generates output in GRaphEd format. Disable DNS lookup for the multicast router names. The output contains the interface configuration information of the requested router(s). The format for each interface output is: If there are multiple neighbor routers on one interface, they will all be reported. The neighbor_name will not be printed if the option is specified on the command line. The possible values for are: Neighbors are reached via tunnel. The tunnel uses IP source routing. The interface is down. The interface is administratively disabled for multicast routing. The local router is the querier of the subnet. The format of the GRaphEd output is: If there is no neighbor router on an interface, then a will be put next to the node_name. If there are multiple neighbor routers on one interface, all of them will be reported. The possible values for are: The neighbor is reached via tunnel. The neighbor is on the same network/subnet. The interface is down. Please see mrouted(1M) for and EXAMPLES
Querying for the multicast router connection information. 127.0.0.1 (localhost) [version 3.3]: 193.2.1.39 -> 0.0.0.0 (all-zeros-broadcast) [1/1/disabled] 15.13.106.144 -> 15.255.176.33 (matmos.hpl.hp.com) [10/1/tunnel] 15.13.106.144 -> 15.17.20.7 (hpspddc.vid.hp.com) [10/1/tunnel/down] Querying for multicast router connectivity with option: GRAPH "Multicast Router Connectivity: Wed Feb 1 17:34:59 1995"=UNDIRECTED 252537488 {$ NP 1440 1060 $} "hpntc1t.cup.hp.com*" ; 252538974 {$ NP 940 1120 $} "hpntcbs.cup.hp.com" 252537488 "10/1E" 252539807 "1/1P" ; 252539807 {$ NP 1590 1150 $} "hpntc1h.cup.hp.com*" ; Note must be run as root. AUTHOR
was developed by Pavel Curtis. SEE ALSO
mrouted(1M), mrinfo(1M). map-mbone(1M)
All times are GMT -4. The time now is 09:04 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy