Fixed Width Join & Pad Sed/Awk Help


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Fixed Width Join & Pad Sed/Awk Help
# 8  
Old 09-03-2009
vgersh99 ...i have a question...

what does
Code:
"%-*s"

I haven't found no docs on fmt....

Thanx.
# 9  
Old 09-03-2009
Quote:
Originally Posted by protocomm
vgersh99 ...i have a question...

what does
Code:
"%-*s"

I haven't found no docs on fmt....

Thanx.
Google for width trick printf

Regards
# 10  
Old 09-03-2009
Quote:
Originally Posted by protocomm
vgersh99 ...i have a question...

what does
Code:
"%-*s"

I haven't found no docs on fmt....

Thanx.
this is described in 'man -s 3C printf' (at least on Solaris):
Code:
     A field width, or precision, or both may be indicated by  an
     asterisk  (*)  .  In this case, an argument of type int sup-
     plies the field width  or  precision.  Arguments  specifying
     field width, or precision, or both must appear in that order
     before the argument, if any, to  be  converted.  A  negative
     field  width  is  taken  as  a - flag followed by a positive
     field width. A negative precision is taken as if the  preci-
     sion were omitted. In format strings containing the %n$ form
     of a conversion specification, a field  width  or  precision
     may  be  indicated by the sequence *m$, where m is a decimal
     integer in the range [1, NL_ARGMAX] giving the  position  in
     the  argument list (after the format argument) of an integer
     argument containing the field width or precision, for  exam-
     ple:

     printf("%1$d:%2$.*3$d:%4$.*3$d\n", hour, min, precision, sec);

     The format can contain either numbered  argument  specifica-
     tions (that is, %n$ and *m$), or unnumbered argument specif-
     ications (that is, % and *), but normally not both. The only
     exception to this is that %% can be mixed with the %n$ form.
     The results  of  mixing  numbered  and  unnumbered  argument
     specifications  in  a format string are undefined. When num-
     bered argument specifications are used, specifying  the  Nth
     argument  requires  that all the leading arguments, from the
     first to the (N-1)th, are specified in the format string.

We're just specifying a precision as an 'argument to 'printf' - and not as a 'hard-wired' number in in the first argument to printf:
Code:
printf("%-25s", foo)
vs
printf("%-*s", max, foo)   # assuming max=25

# 11  
Old 09-04-2009
A great thanx...

It's clear from now on....
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

awk issue splitting a fixed-width file containing line feed in data

Hi Forum. I have the following script that splits a large fixed-width file into smaller multiple fixed-width files based on input segment type. The main command in the script is: awk -v search_col_pos=$search_col_pos -v search_str_len=$search_str_len -v segment_type="$segment_type"... (8 Replies)
Discussion started by: pchang
8 Replies

2. Shell Programming and Scripting

Replace using awk on fixed width file.

All, I used to use following command to replace specific location in a fixed width file. Recently looks like my command stopped working as intended. We are on AIX unix. awk 'function repl(s,f,t,v) { return substr(s,1,f-1) sprintf("%-*s", t-f+1, v) substr(s,t+1) } NR<=10 {... (3 Replies)
Discussion started by: pinnacle
3 Replies

3. Shell Programming and Scripting

Print column details from fixed width file using awk command

hi, i have a fixed width file with multiple columns and need to print data using awk command. i use: awk -F "|" '($5 == BH) {print $1,$2,$3}' <non_AIM target>.txt for a delimiter file. but now i have a fixed width file like below: 7518 8269511BH 20141224951050N8262 11148 8269511BH... (5 Replies)
Discussion started by: kcdg859
5 Replies

4. Shell Programming and Scripting

Alter Fixed Width File

Thank u so much .Its working fine as expected. ---------- Post updated at 03:41 PM ---------- Previous update was at 01:46 PM ---------- I need one more help. I have another file(fixed length) that will get negative value (ex:-00000000003000) in postion (98 - 112) then i have to... (6 Replies)
Discussion started by: vinus
6 Replies

5. Shell Programming and Scripting

Left pad spaces using awk or sed

Hi,I've a unix pipe delimited file as below f1|f2|f3|f4|f5|f6 My requirement is to pad spaces on the left to fields f2, f3 and f5. Field Lengths according to file layout f2 - 4 char f3 - 5 char f5 - 3 char If my record is as below 1|43|bc|h0|34|a Output record should be as below 1| 43| bc|h0|... (4 Replies)
Discussion started by: Soujanya_K
4 Replies

6. Shell Programming and Scripting

variable fixed-width fields

Hi there, CTL Port IO Rate(IOPS) Read Rate(IOPS) Write Rate(IOPS) Read Hit(%) Write Hit(%) Trans. Rate(MB/S) Read Trans. Rate(MB/S) Write Trans. Rate(MB/S) 09:36:48 0 A 136 0 135 97 100 ... (6 Replies)
Discussion started by: gray380
6 Replies

7. Shell Programming and Scripting

awk: creating a fixed-width single file from 2 different files

I have to create a single file from three files, Please see below for samples: day.txt 20090101 20090102 item.txt 123456789101 12345678910209 1234567891 str.txt 1 12 123 output.txt 20090101123456789101 1 0 2009010112345678910209 12 ... (2 Replies)
Discussion started by: tamahomekarasu
2 Replies

8. Shell Programming and Scripting

Appending string (charachters inside the line) to a fixed width file using awk or sed

Source File: abcdefghijklmnop01qrstuvwxyz abcdefghijklmnop02qrstuvwxyz abcdefghijklmnop03qrstuvwxyz abcdefghijklmnop04qrstuvwxyz abcdefghijklmnop05qrstuvwxyz Whatever characters are in 17-18 on each line of the file, it should be concatenated to the same line at the character number... (6 Replies)
Discussion started by: tamahomekarasu
6 Replies

9. Shell Programming and Scripting

edit entire column from a fixed-width file using awk or sed

Col1 Col2 Col3 Col4 12 Completed 08 0830 12 In Progress 09 0829 11 For F U 07 0828 Considering the file above, how could i replace the third column the most efficient way? The actual file size is almost 1G. I am... (10 Replies)
Discussion started by: tamahomekarasu
10 Replies

10. UNIX for Dummies Questions & Answers

Fixed Width file using AWK

I am using the following command at the Unix prompt to make my 'infile' into a fixed width file of 100 characters. awk '{printf "%-100s\n",$0}' infile > outfile However, there are some records with a special character "" These records are using 3 characters in place of one and my record... (2 Replies)
Discussion started by: alok.benjwal
2 Replies
Login or Register to Ask a Question