Mas você não sabe quais os tamanhos máximos das colunas? O awk é uma linguagem muito apropriada para tratamento de strings. E pelo exemplo que você passou a coisa parece ser bem regular. Se não for vc pode fazer uma passagem para contar a largura máxima de cada coluna e usá-la. Daria mais trabalho, claro.
Sem contar, assumindo que sabe os limites: teste.awk --------------------------------------------------------- /Ano/ { printf("+------+---------+---------+---------+---------+---------+\n"); printf("|%5s |%8s |%8s |%8s |%8s |%8s |\n",$1,$2,$3,$4,$5,$6); printf("+------+---------+---------+---------+---------+---------+\n"); } /^[0-9]/ { printf("|%5s |%8s |%8s |%8s |%8s |%8s |\n",$1,$2,$3,$4,$5,$6); } END { printf("+------+---------+---------+---------+---------+---------+\n"); } --------------------------------------------------------- teste.csv (usando seu exemplo e vírgula como separador) --------------------------------------------------------- Ano,IPCA,IGPM,TR,Poup,FGTS 2007,4.4573,7.7463,1.4453,7.7022,5.1582 2008,5.9023,9.8054,1.6348,7.9037,5.3547 2009,4.3120,-1.7123,0.7090,6.9204,4.3949 2010,5.9091,11.3220,0.6888,6.8992,4.3739 --------------------------------------------------------- Execução: $ awk -F "," -f teste.awk teste.csv +------+---------+---------+---------+---------+---------+ | Ano | IPCA | IGPM | TR | Poup | FGTS | +------+---------+---------+---------+---------+---------+ | 2007 | 4.4573 | 7.7463 | 1.4453 | 7.7022 | 5.1582 | | 2008 | 5.9023 | 9.8054 | 1.6348 | 7.9037 | 5.3547 | | 2009 | 4.3120 | -1.7123 | 0.7090 | 6.9204 | 4.3949 | | 2010 | 5.9091 | 11.3220 | 0.6888 | 6.8992 | 4.3739 | +------+---------+---------+---------+---------+---------+ Abs, Cartola. Em 22 de janeiro de 2011 11:22, Cleyton Agapito <cragap...@gmail.com>escreveu: > Em 22 de janeiro de 2011 10:44, Tiago Ribeiro <sha...@gmail.com> escreveu: > > Já tentou o awk? > > > > Pois é, o problema são colunas de tamanho diferente, quantidade de > linhas e colunas, separação de cabeçalho, etc. O problema maior no > caso é alinhamento. > > O que encontrei mais próximo disso foi o texproc/align, outra é > importar no mysql e obter de lá. > > De qualquer forma valeu a força... > > Abração. > ------------------------- > Histórico: http://www.fug.com.br/historico/html/freebsd/ > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd > ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd