[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RES: [shell-script] Formatar primeira coluna com tamanho fixo
From: |
Flavio |
Subject: |
RES: [shell-script] Formatar primeira coluna com tamanho fixo |
Date: |
Sun, 8 Mar 2009 10:52:45 -0300 |
Obrigado MrBits,
Rodei o seu exemplo e realmente funcionou como eu tô precisando. Vou apenas
adaptar para pegar o maior conteúdo da coluna 1.
Obrigado.
Atenciosamente,
Flávio.
-----Mensagem original-----
De: address@hidden [mailto:address@hidden]
Em nome de MrBiTS
Enviada em: domingo, 8 de março de 2009 08:26
Para: address@hidden
Assunto: Re: [shell-script] Formatar primeira coluna com tamanho fixo
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Flavio wrote:
> Oi pessoal, após extrair dados específicos de um arquivo (usei de tudo
cat,
> sed, grep, cut, xargs, etc) e dispô-los em duas colunas, empanquei em como
> manter uma distância fixa (tamanho do maior texto da coluna1 + 1) entre a
> primeira coluna e a segunda. O conteúdo extraído seria algo similar ao
> colocado abaixo:
>
> dfsdskdfx alsdjadsadkj
> sdasdnasnd jasdadadaj
> asdad sdjfsdfksf
> dssdjsfsdasç lsdsdfsdfljdsfs
> sdjfsflsflksj osdflsdfsflkj
>
> Após o tratamento ele deveria ficar assim:
>
> dfsdskdfx alsdjadsadkj
> sdasdnasnd jasdadadaj
> asdad sdjfsdfksf
> dssdjsfsdasç lsdsdfsdfljdsfs
> sdjfsflsflksj osdflsdfsflkj
>
> O caracter a ser adicionado as linhas da primeira coluna seria espaço. Meu
> problema não é nem saber qual string da primeira coluna é maior, o que
> queria saber é se tem algum comando similar no Linux ao RPAD do PL/SQL.
Um caminho seria o printf que virtualmente todo SO POSIX possui. Melhorei um
pouco o arquivo de exemplos, para ilustrar melhor e sem
sujeiras como o ç para nos atrapalhar:
mrbits@astarte:~$ cat d.txt
Nome Cargo Salario
Fulano Cargo1 10000
Sicrano NaoFazNada 300
Beltrano Seilaoqueelefaz 2450
mrbits@astarte:~$ while read LINE ; do set - "$LINE" ; printf "%-10s %-15s
%-10s\n" $1 $2 $3; done < d.txt
Nome Cargo Salario
Fulano Cargo1 10000
Sicrano NaoFazNada 300
Beltrano Seilaoqueelefaz 2450
É só um ponto de partida. Depois nos diga onde vc chegou.
- --
Um abraço
.0. MrBiTs - mrbits@linuxmasters <mailto:mrbits%40linuxmasters.info> .info
..0 GnuPG - http://keys.
<http://keys.cardboard.net:11371/pks/lookup?op=get&search=0xAC37715A6DD1F186
> cardboard.net:11371/pks/lookup?op=get&search=0xAC37715A6DD1F186
000 http://www.mrbits. <http://www.mrbits.com.br> com.br
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAkmzqysACgkQrDdxWm3R8YZqvwCffAxeCBJ+t7v1kCrvj7fO3VC+
MYAAnipYeFyZxwtCfAq8NDQSf+EwPhkM
=UORR
-----END PGP SIGNATURE-----
No virus found in this incoming message.
Checked by AVG - www.avg.com
Version: 8.0.237 / Virus Database: 270.11.9/1989 - Release Date: 03/07/09
18:43:00
[As partes desta mensagem que não continham texto foram removidas]