AWK statement formatting assistance


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting AWK statement formatting assistance
# 1  
Old 08-27-2009
AWK statement formatting assistance

I am writing a script that ssh's out to our various servers and extracts diskspace info to generate into a report. With the mix of servers linux/solairs 8-10/AIX the easiest way is to use df -k (though I much rather prefer df -h).

I have pasted the relevant code:

Code:
dfdata=`ssh -q -o ConnectTimeout=10 rkruck@$host df -k `
           if (( $? == 0 ))
           then
                echo "$dfdata" | \
                     grep "/dev/" | \
                     egrep ' 9[0-9]%| 100%' | \
                     awk '{printf "%-16s        %4s             %6.2f        %s\n"
, H, $5, $4/ 1024, $6}' H=$host  >> $RDIR/diskspace.$RDATE

I get the right output, but am having trouble formatting the 3rd colum lining up so it's right justfied with the 2 decimal places lining up so it looks like the following:

Code:
hostname1                      91%               1809.53            /u01
hostname2                      95%               1196.00            /u02
hostname3                      99%               209.20            /u04
hostname4                      97%               734.77             /u03
hostname5                      98%               448.74            /u08
hostname6                      94%               1214.33            /u07
hostname7                     100%               188.25            /u05
hostname8                      95%               1053.51            /u09
hostname9                      94%               4232.70            /d02
hostname10                     91%               6424.62            /d01
hostname11                     99%               24354.89            /ora05
hostname12                     90%               643.86            /home

Any help is appreicated.

Robert

Last edited by rkruck; 08-27-2009 at 05:53 PM.. Reason: fixed formatting from code tags
# 2  
Old 08-27-2009
Hi.

In " %6.2f", six is the length of the field, including the . and the 2 decimal places, not the length of the whole number that precedes the decimal part.

Change it to 8.2.

Last edited by Scott; 08-27-2009 at 06:26 PM.. Reason: Changed something. Don't know what. All made sense when I wrote it! Changed it again, and now I've lost the plot.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Need assistance with an IF statement to compare a list of SHA keys between two repositories.

Hello. My first time here. What I am trying to do is this. FileA is located on a web server FileB is located on local storage Both files contain a large list of information of not only SHA keys but versions, and other information. I need a statement that can compare between FileA... (5 Replies)
Discussion started by: Query
5 Replies

2. UNIX for Beginners Questions & Answers

awk assistance - Comparing 2 csv files

Hello all, I have searched high and low for a solution to this, many have come really close but not quite what I'm after. I have 2 files. One contains GUID's, for example: 8121E002-96FE-4C9C-BC5A-6AFF20DACECD 84468F30-F3B7-418B-81F0-0908E80792BF A second file, contains a path to the... (8 Replies)
Discussion started by: tirmUK
8 Replies

3. UNIX for Beginners Questions & Answers

Parsing output with awk - need assistance on exception

HI Folks - I have a business need to check weather or not there are "active" sessions within a particular application I interact with prior to running any automation. I have built a function that first exports all "sessions" from my respective application to a text file. The output is as... (2 Replies)
Discussion started by: SIMMS7400
2 Replies

4. Shell Programming and Scripting

Convert Update statement into Insert statement in UNIX using awk, sed....

Hi folks, I have a scenario to convert the update statements into insert statements using shell script (awk, sed...) or in database using regex. I have a bunch of update statements with all columns in a file which I need to convert into insert statements. UPDATE TABLE_A SET COL1=1 WHERE... (0 Replies)
Discussion started by: dev123
0 Replies

5. Shell Programming and Scripting

Assistance required with awk and regular expressions

Hello there, I am trying to get my head around the section below of a script we use that incorporates AWK and Regular Expressions. { match($0,"The broker*");print $1,$2,$3 ":", substr($0, RSTART,RLENGTH)} I have a basic understanding of how match works, what I am struggling with is the... (2 Replies)
Discussion started by: jimbojames
2 Replies

6. Shell Programming and Scripting

Assistance with an awk code to split files but keep the header

---------- Post updated at 11:48 AM ---------- Previous update was at 11:46 AM ---------- Hello all I have an awk code that successfully creates separate text files based on the first six letters of the second field. What it doesn't do is preserve the header into each resulting file. ... (6 Replies)
Discussion started by: colecandoo
6 Replies

7. UNIX for Dummies Questions & Answers

awk o/p assistance

Hi, I would like to know the awk command that gets the below o/p: File contents: Board1;9a;60;36;60.0;60;0;0.0 Board2;96;60;35;58.3;55;0;0.0 Board3;92;60;60;100.0;60;60;100.0 Used awk script: #!/bin/awk -f BEGIN { FS = ";"; printf (" Device | ... (1 Reply)
Discussion started by: Dendany83
1 Replies

8. Shell Programming and Scripting

help with awk statement and date formatting

I am trying to write a script that will execute one awk statement if the day is Monday and another awk statement for any other day of the week. below is my code. I keep getting "invalid date". I know this is something simple but i can't determine exactly what it is. Please help. if then ... (2 Replies)
Discussion started by: bds052189
2 Replies

9. Shell Programming and Scripting

Awk Assistance

Hello A friend of mine posted this on another site that I follow. It is to advanced for me to figure out. If solved I will give credit where credit is due: NOTE: Does not have to be AWK. Any Language will work, Hi. I need a little assistant to write an awk script on linux that reads a file... (12 Replies)
Discussion started by: abacus
12 Replies

10. Shell Programming and Scripting

Script Assistance - Outputting to file with Awk

I'm trying to take a list of domains, find out the MX resolve it to IP then find out what the NS is and output the contents to a new file. The only problem i'm having is when checking the Ip or host of the MX i can only get it to print the column with the MX record and the results of the host... (1 Reply)
Discussion started by: spartan22
1 Replies
Login or Register to Ask a Question