shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RES: [shell-script] Transformar texto


From: ratmmmam
Subject: Re: RES: [shell-script] Transformar texto
Date: Wed, 7 Jul 2004 14:28:17 -0300
User-agent: KMail/1.6.1

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Wednesday 07 July 2004 12:04, Rodrigo Vilaça wrote:
> $ echo "2004-07-07 10:41:57.00000000000 -0300" | cut -d. -f1 | sed
> 's/[^0-9]//g'
>
> 20040707104157

galera, usasse muito o sed p/ tudo, é muito útil, mas "geralmente" ele é bem 
complexo, principalmente p/ quem tá começando, mas existem diversas 
ferramentas GNU que fazem o "mesmo" (em muitos casos) e simplificam bastante 
tb, neste exemplo (deste e-mail) pode-se usar tb o "tr" aliado ao cut (já 
demonstrado), ao invés do sed e o resultado é o mesmo:

# isso é desnecessário, fiz só p/ caber numa linha
$ i="Modify: 2004-07-07 10:41:57.000000000 -0300"

$ echo $(echo $i | cut -f1 -d. | tr -cd 0-9)
20040707104157

o cut é igual ao do Rodrigo, mas olha só o tr:
tr -cd 0-9

o "d" é p/ remover, bem conhecido, mas o "c" complementa o 0-9, ou seja, é 
como se fosse o [^0-9] numa ER... aliado ao "d", neste caso, vai deletar tudo 
que não for número... faz o mesmo do exemplo com o sed, mas o tr é bem mais 
simples (ao meu ver) de trabalhar do que usando o sed...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)

iD8DBQFA7DK22nbunCwBB+oRAv8vAKCF/1V2AJMhjw9zucxgA4rIVfQrjACdG4a6
gIi1yL8Vir9/jYJH23Tx+GE=
=SqQS
-----END PGP SIGNATURE-----


reply via email to

[Prev in Thread] Current Thread [Next in Thread]