Make netstat human readable?


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Make netstat human readable?
# 8  
Old 03-02-2011
Quote:
Originally Posted by MrEddy
Is there any way to make netstat output the information in a more human readable format? even if it's not exact? I don't even care if it has to round up/down to the nearest Meg to make it work.

I wind up having to stare at netstat running for while and I wish I could get it to output things in a format like 45M instead of 47395923 or other rediculously long numbers that I can't read at a glance.
The man page, on FreeBSD 8.x, references the -h flag:

netstat -i . . . If -h is also present, print all counters in human
readable form.
# 9  
Old 03-03-2011
Afraid my version of freebsd is old and i don't have -h

FreeBSD 5.3-RELEASE #0

---------- Post updated 03-03-11 at 07:41 PM ---------- Previous update was 03-02-11 at 10:05 PM ----------

Ok I've gotten most everything working how i want but now i'm having difficulty getting my if/else working. Any suggestions on what i'm doing wrong here. I'm trying to get awk to print two different results depending on how big the number is.

Code:
netstat -i 1 1 | awk '($3 > 100000) {print "\033[1;31m" $3/1024/1024*8 } else {print "\033[6œ;30m" $3/1024/1024*8}'

Here is my output when I try.
Code:
awk: syntax error at source line 1
 context is
    ($3 > 100000) {print "\033[1;31m" $3/1024/1024*8 } >>>  else <<<  {print "\033[6;30m" $3/1024/1024*8}
    missing ]
awk: bailing out at source line 1


Last edited by Scott; 03-04-2011 at 09:42 AM.. Reason: More code tags
# 10  
Old 03-04-2011
You are missing an if statement.
Code:
netstat -i 1 1 | awk '{ if($3 > 100000) {print "\033[1;31m" $3/1024/1024*8 } else {print "\033[6œ;30m" $3/1024/1024*8}}'

# 11  
Old 03-04-2011
DOH! god how could I miss something that stupid???? do you know how long I stared at that and didn't see that????

---------- Post updated at 10:09 AM ---------- Previous update was at 08:39 AM ----------

Ok so my final command looks like this and I'm really liking it. Lets me set how much load I want to watch for and then changes the output color to red anytime it is a heavier load than what I set it for.

Code:
echo "How many Megs" ; read gload ; gload2=`echo $gload | awk '{print $1*1024*1024/8}'` ; netstat -i 1 1 | awk '{ if($3 < '$gload2' ) {print "\033[1;0m" $3/1024/1024*8, $6/1024/1024*8} else {print "\033[1;31m" $3/1024/1024*8, $6/1024/1024*8}}'

The last minor thing that I can't seem to get rid of is the stupid 0's that show up. Since its doing math and every 20 or so lines it prints the column heads again.... errs errs coll etc.. I can't seem to get those to not show up. So i'll get these kind of results.

Code:
45.4351 45.513
47.8142 47.8741
50.3284 50.3137
51.098 51.1384
0 0
0 0
50.4882 50.5795
43.9978 43.9685
43.9704 44.1034
44.715 45.1511

Only slightly annoying but ideally i'd like to get those zero's to not show up.

---------- Post updated at 10:26 AM ---------- Previous update was at 10:09 AM ----------

I've tried doing a simple grep -v errs yet for some reason that breaks the whole command and i'm not certain why.

---------- Post updated at 01:44 PM ---------- Previous update was at 10:26 AM ----------

HA! got rid of the stupid zero's by adding

/[1-9]/

to my awk statement. That way if the line only has zero's it wont print.

---------- Post updated at 01:53 PM ---------- Previous update was at 01:44 PM ----------

Is there any way to get awk to append a timestamp to an output line?

My command is coming along smashingly however if I leave this running for long periods of time unattended its going to spew out tons of data and with no time stamp if the box goes over the load I'll have no idea when that actually occurred and therefor no time frame to investigate.

---------- Post updated at 02:18 PM ---------- Previous update was at 01:53 PM ----------

added
Code:
 ; x="'"`date +%T`"'"; print  x

---------- Post updated at 03:28 PM ---------- Previous update was at 02:18 PM ----------

Well I jumped the gun on my timestamp. It puts the timestamp in there but its not current. Its only the time when I started the command, it doesn't refresh.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

When comparing binary files, show human readable result?

Hello. I am comparing two binary file. The first file is the source file. The second file is a modified version of the first one. Modification concern uuid value. Example first file have multiple occurrences of 69a3604b-ac2b-43b7-af84-0a4a67fc6962 second file have the same occurence... (1 Reply)
Discussion started by: jcdole
1 Replies

2. Programming

How to parse .nessus file to get result in human readable format?

Scripting Language: bash shell script, python I want to parse .nessus file in human readable format. If any one have any ideas please help me. (2 Replies)
Discussion started by: sk151993
2 Replies

3. Shell Programming and Scripting

Convert epoch time stamp into human readable format

Can someone help me to write a shell script to convert epoch timestamp into human readable format 1394553600,"test","79799776.0","19073982.728571","77547576.0","18835699.285714" 1394553600,"test1","80156064.0","19191275.014286","62475360.000000","14200554.720000"... (10 Replies)
Discussion started by: Moon1234
10 Replies

4. Shell Programming and Scripting

Making big find command more human readable

This does not work. One line works but my pattern are about 100 characters long and it is messy to read. When I try to use several lines it does not two' find "$inputDirectory" \( -name 'very long pattern1' -o -name 'very long pattern2' -o -name... (1 Reply)
Discussion started by: Michael Stora
1 Replies

5. UNIX for Dummies Questions & Answers

Display Directories with their sizes in human readable format

Hi, I want to list all the directories present in a particular location and want to display their sizes as well. I know "ls -lh" but it doesn't show the size of the complete directory. So i want something like dir1 266 MB dir2 2 KB dir3 22 MB ... ... file1 10 Kb ..... Thanks Sarbjit (4 Replies)
Discussion started by: sarbjit
4 Replies

6. Shell Programming and Scripting

Convert epoch to human readable date & time format

Hello I have log file from solaris system which has date field converted by Java application using System.currentTimeMillis() function, example is 1280943608380 which equivalent to GMT: Wed, 04 Aug 2010 17:40:08 GMT. Now I need a function in shell script which will convert 1280943608380... (3 Replies)
Discussion started by: Yaminib
3 Replies

7. Shell Programming and Scripting

Human readable sizes in Solaris bdf

hay every body i need script like bdf -h in hp-ux there is no option like solaris df -h it is only bdf -k so i need the output with GBytes (8 Replies)
Discussion started by: maxim42
8 Replies

8. UNIX for Dummies Questions & Answers

How to make user's qutoa in human readable format?

$ quota Disk quotas for user cqlouis (uid 1254): Filesystem blocks quota limit grace files quota limit grace /dev/sdb1 64 300000 320000 8 0 0 $ I want to make the output of command quota in human readable format? How to? As we... (2 Replies)
Discussion started by: cqlouis
2 Replies

9. Shell Programming and Scripting

script to convert epoch into human-readable

This is what I have to start out with more file 1208217600 1208131200 1193806800 I want to convert the epoch column into a human-readable format. My file has hundreds of these epoch times that I want to loop through and convert. (The epoch time is really the last column of the line) ... (3 Replies)
Discussion started by: snoman1
3 Replies

10. Shell Programming and Scripting

formatting output in human readable numbers

Hi, The following command provides the usage in 1024-byte blocks du -ks * | sort -n | echo "$1" ... 1588820 user10 2463140 user11 2464096 user12 5808484 user13 6387400 user14 ..... I am trying to produce an output of first coulmn by multiplying by 1024 so that the output should... (11 Replies)
Discussion started by: ghazi
11 Replies
Login or Register to Ask a Question