awkの使い方について教えて下さい。 awkを使用して、以下の出力を、数字は、3桁毎にカンマで区切り、 出力位置を揃えて出力したいのですが、 180 file1.txt 1821 file2.txt 113457 fil3.txt を 180 file1.txt 1,821 file2.txt 113,457 file3.txt と出力したいのですが、 数字の部分を揃えることができません。 そのため、たの部分もそろいません。 どうすれば上手くできますか。 ------------------------------- #!/bin/sh # cat list.txt | sort -n -r | awk ' function put_comm(val) { if (val < 1000) { printf("%d",val) ; } else { put_comm(val / 1000) ; printf(",%03d",val % 1000) ; } } { if ($1 < 1000) { printf("%d",$1) ; } else { val=$1 ; put_comm(val) ; } } { #printf "\n" printf(" %s\n",$2) }' |