救命啊!!awk排列问题

救命啊!!awk排列问题

[code:1]原文件

111:02-98781999:Williams:Nick:T:35:Computer Officer:14-10-2000
112:02-99893878:Brown:Sarah:B:12:Electrician:09-02-1992
131:02-95673456:Couch:David:A:26:Consultant:23-04-1994
236:02-95437869:Anderson:Sarah:K:19:CEO:21-09-1988
输出结果
111 02-98781999 Williams   Nick     T  35  Computer Officer 14-10-2000
112 02-99893878 Brown      Sarah  B 12  Electrician            09-02-1992
131 02-95673456 Couch      David   A 26  Consultant          23-04-1994
236 02-95437869 Anderson  Sarah  K 19  CEO                     21-09-1988
就是要求输出各个域左排列
大虾们帮帮忙啊......[/code:1]要排列整齐的..
awk -F: '{printf "%d %s %-8s %-5s %c %d %-16s %-s",$1,$2,$3,$4,$5,$6,$7,$8}'
好像不行 提示这个
awk: cmd. line:1: (FILENAME=records FNR=1) fatal: not enough arguments to satisfy format string
        `%d %s %-8s %-5s %c %d %-16s %-s'
            ^ ran out for this one
:-(  :-(  :-(
[quote:79559486da="lwf163"]awk -F: '{printf "%d %s %-8s %-5s %c %d %-16s %-s",$1,$2,$3,$4,$5,$6,$7,$8}'[/quote]
谢谢lwf163的点拨 问题解决一半了
不过怎么换行?两行都连在一起了...
已经解决
:-)
呵呵,忘记加\n了,不好意思饿。
[quote:b7debb1d93="lwf163"]呵呵,忘记加\n了,不好意思饿。[/quote]
点出了方法就很好了  :D