[Fedora-users-br] sed

Fernando liquuid em gmail.com
Sex Out 12 19:57:27 UTC 2007


On 10/12/07, Alberto Vieira Ferreira Monteiro <albmont em centroin.com.br> wrote:
> Desisto. Ou eu sou muito burro, ou essa documentação é muito ruim.
>
> Eu quero fazer o seguinte: dado um número n (que pode ser desde 1 a 99999),
> eu quero escrevê-lo com 5 campos, precedidos por 0.
>
> Por exemplo, 42 vira 00042, e 3141 vira 03141
>
> Em C, isso é trivial: printf("%05d", n);
>
> Mas eu sou teimoso, e tentei fazer isso com sed.
>
> Teoricamente, alguma coisa do tipo:
>
> n=42
> echo "00000$n:" | sed -n 's/*([0-9]{5}):/\1/p'
>
> devia funcionar, mas não funciona. Tentei acrescentar vários \, sem sucesso.
>
> Obviamente, os helps e FAQs não ajudam. Alguém tem alguma idéia de
> como isso funciona?
>
> Alberto Monteiro
>

Não manjo nada de sed, mas acho que o comando abaixo resolve seu problema :

printf formato string

Onde formato é igual ao do C %d,%c etc....

E a string é o que deve ser impresso.

Exemplo:

printf %09d 10

Serve ?



-- 
LUN : #257752.

http://www.liquuid.net
Jabber: xsl4v3 em jabber.org
http://www.flickr.com/photos/slave/




Mais detalhes sobre a lista de discussão Fedora-users-br