Formatting my output


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Formatting my output
# 1  
Old 04-19-2010
Question Formatting my output

Dear All,

I am new to unix scripting. I need your help to format my output on screen.


Code:
echo "        --------------------------------------------"
echo "        |                My Output                  |"
echo "        --------------------------------------------"
echo "        | A: $A  | B:$B | C:$C | D:$D   |"
echo "        | E: $E  | F:$F | G:$G | H:$H   |"

Code:
                --------------------------------------------
                |                My Output                 |
                --------------------------------------------
                | A: 11  | B:17 | C:2 | D:3   |
                | E: 2  | F:13262 | G:2 | H:1   |

i need your help to properly display the above result without disturbing the template.

Last edited by rahiljavaid; 04-19-2010 at 03:03 AM..
# 2  
Old 04-19-2010
awkscrp:
Code:
BEGIN{
        printf("%s\n%s\n%s\n","--------------------------------------------", "\t| My Output |\t", " -------------------------------------------" )
        printf("%s%d%s%d%s%d%s%d%s\n", " | A:", a ,"| B:", b ,"| C:", c , " | D:", d , " |") ;
        printf("%s%s%s%s%s%s%s%s%s\n", " | E:", e ,"| F:", f ,"| G:", g , " | H:", h , " |")
}

Run as:
Code:
awk -f awkscrp -v a="$A" -v b="$B" -v c="$C" -v d="$D" -v e="$E" -v f="$F" -v g="$G" -v h="$H"


cheers,
Devaraj Takhellambam
# 3  
Old 04-19-2010
I have created below script but it is giving me error.

Code:
A=11
B=17
C=2
D=3
E=2
F=13262
G=25
H=4569

BEGIN{
        printf("%s\n%s\n%s\n","--------------------------------------------", "\t| My Output |\t", " -------------------------------------------" )
        printf("%s%d%s%d%s%d%s%d%s\n", " | A:", a ,"| B:", b ,"| C:", c , " | D:", d , " |") ;
        printf("%s%s%s%s%s%s%s%s%s\n", " | E:", e ,"| F:", f ,"| G:", g , " | H:", h , " |")
}

awk -f awkscrp -v a="$A" -v b="$B" -v c="$C" -v d="$D" -v e="$E" -v f="$F" -v g="$G" -v h="$H"

when i run this script through sh shell it gives me below result.

Quote:
sh 2
2[10]: BEGIN{: not found.
2[11]: Syntax error at line 11 : `(' is not expected.
Please advice
# 4  
Old 04-19-2010
1. Create the below awk script and give execute perm.
awkscrp:
Code:
BEGIN{
        printf("%20s\n%s\n%20s\n","-----------------------------------------------------------",
               "\t\t\t| My Output |\t\t\t", " ----------------------------------------------------------" )
        printf("%s%+10s%s%+10s%s%+10s%s%+10s%s\n", " | A:", a ,"| B:", b ,"| C:", c , " | D:", d , " |") ;
        printf("%s%+10s%s%+10s%s%+10s%s%+10s%s\n", " | E:", e ,"| F:", f ,"| G:", g , " | H:", h , " |")
}

2. Create the below file as a script to be executed.

format.sh
Code:
#!/bin/ksh

A=11
B=17
C=2
D=3
E=2
F=13262
G=25
H=4569
awk -f awkscrp -v a="$A" -v b="$B" -v c="$C" -v d="$D" -v e="$E" -v f="$F" -v g="$G" -v h="$H"

3. run format.sh


cheers,
Devaraj Takhellambam
# 5  
Old 04-19-2010
Awk isn't required.
Code:
A=11
B=17
C=2
D=3
E=2
F=13262
G=25
H=4569

echo "        --------------------------------------------"
echo "        |                My Output                  |"
echo "        --------------------------------------------"
printf "        | A: %5s  | B:%5s | C:%5s | D:%5s   |\n" $A $B $C $D
printf "        | E: %5s  | F:%5s | G:%5s | H:%5s   |\n" $E $F $G $H

# 6  
Old 04-19-2010
Both are working fine!

Thanks alot for the help Smilie

Cheers.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Formatting the Output

Hi, I am trying to use printf command and format certain output in a specific format as under: While the left side (upto |) of the above format is part of a fixed header function, the right side is where i am expecting data to be printed. However, as seen, Row1 value is reflecting on last... (5 Replies)
Discussion started by: EmbedUX
5 Replies

2. Shell Programming and Scripting

Formatting the output

Hi, I have a file which contents entries in this form. Only in /data4/temp abc.000001 Only in /data4/temp abc.000003 Only in /data4/temp abc.000012 Only in /data4/temp abc.000120 Only in /data4/temp abc.000133 Only in /data4/temp abc.001444 i want to read line by line and format... (2 Replies)
Discussion started by: arijitsaha
2 Replies

3. Shell Programming and Scripting

Output Formatting

Hi Guys I need help removing some lines from output i am receiving from a shell script. Here is the output: http://i52.tinypic.com/10z0fut.png I am trying to remove the output that i have circled. . ${EDW}/extracts/bin/extracts_setup2.sh . ${EDW}/extracts/extracts.conf ... (7 Replies)
Discussion started by: mooey1232003
7 Replies

4. Shell Programming and Scripting

Formatting of output

Hi Experts, I have to create a report for certain audit and my output looks as follows I m trying to format my output to look like Any inputs would be highly appreciated Thanks Syed (5 Replies)
Discussion started by: maverick_here
5 Replies

5. Shell Programming and Scripting

formatting output

Sorry for being a n00b, but I'm having a lot more trouble than I should with formatting the output to the program I finally completed. I'm basically looking for the linux equivalent to setw( ) from c++ so that I can print things in columns like this (but without the underlines lol): MISSPELLED: ... (4 Replies)
Discussion started by: aikaterinimak
4 Replies

6. Shell Programming and Scripting

Formatting ls output

I am using find and ls to search for "warez" files on my server. find /home/ -regex ".*\.\(avi\|mp3\|mpeg\|mpg\|iso\)" -print0 | xargs -0 ls -oh This command produces this: -rw-r--r-- 1 1000 3.2M Feb 18 2009 /home/user/public_html/lupus.mp3 I want to only get this 3.2M... (4 Replies)
Discussion started by: bonrad
4 Replies

7. Shell Programming and Scripting

more help with formatting ls output...

Ok, for a fun project, my goal is to replicate the style of "catalog" on an old apple ] *A 002 SOMEAPPLESOFTFILE B 004 SOMEFILE T 006 SOMETEXT I 002 SOMEINTEGERFILE The first character is either " " or "*" depending on if the file is locked or not. Next is the filetype, so in... (1 Reply)
Discussion started by: patrick99e99
1 Replies

8. Shell Programming and Scripting

Formatting Output

Hi I tried running the below awk 'BEGIN { printf ("%s %-51s %s %-7s %s",$var1,$var2,$var3,$var4,$var5)}' from the command prompt and it is not working. Getting the error awk: Field $() is not correct. The source line number is 1. Actually my requirement is to form a string based on... (6 Replies)
Discussion started by: dhanamurthy
6 Replies

9. Shell Programming and Scripting

formatting output

Hi need some advice.. #grep -i hostname test.csv (gives the below output) HOSTNAME,name,host_test,,,,,,,, Now I need to format the above output as below. HOSTNAME: name=host_test Any easy way of doing this using awk or sed or printf? (4 Replies)
Discussion started by: balaji_prk
4 Replies

10. Shell Programming and Scripting

Formatting the output

Hi all, Have the following code(1) producing the results(2 & 3). Would like to know if there is a way to format the two reports created in a similar fashion. IE - The first is formatted nicely as a result of the echo "$xmpbdate $xavgs" >> $xmpbrpt However when I attempt to do the same on... (7 Replies)
Discussion started by: Cameron
7 Replies
Login or Register to Ask a Question