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

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

Re: [shell-script] Exibição variaveis


From: Julio C. Neves
Subject: Re: [shell-script] Exibição variaveis
Date: Sat, 21 Apr 2007 10:48:48 -0300

Fala Mop,
concordo totalmente com vc na afirmativa que "me parece um exagero a carga
de um programa externo para retirar 1 byte de uma string de cerca de 16
bytes", mas infelizmente a técnica de expansão de parâmetros aplica-se
somente a variáveis e, se não me engano, o problema apresentado era em um
arquivo que não estava sendo trabalhado em loop.

Mas a dica é muito boa e acho que vc deveria mandá-la para o Cantinho do
Shell das Dicas-l.

Abração,
Julio
:wq

Em 20/04/07, mop <address@hidden> escreveu:
>
> Apenas uma opinião:
>
> Claro que usar programas externos resolve, mas me parece um exagero
> a carga de um para retirar 1 byte de uma string de cerca de 16 bytes.
>
> A linha no "unix" termina com x0A, assim como no "dos" e seus sucessores.
> O detalhe é que a ms usa um "carriage return" (x0D) antes de cada
> "new line" e esse byte sobra então no fim da linha em leitores tipo unix.
> Preparei o bloquinho abaixo, já com new lines ignoradas, para colar direto
> na console de uma vez e ver o resultado com uma tecla. Se não selecionar
> nenhuma linha além do echo, o Enter fica por sua conta. :)
>
> z=$'ABC\rD\15E\x0dF';\
> cat -v<<<$z;\
> cat -v<<<${z%?};\
> cat -v<<<${z/$'\r'};\
> cat -v<<<${z//$'\r'};\
> echo $z
>
> Tudo funcionou como esperava no:
> $ bash -version
> GNU bash, version 3.2.0(1)-release (i686-pc-linux-gnu)
> Copyright (C) 2005 Free Software Foundation, Inc.
>
> Se a string já está numa variável e, supondo que se chame z, o último byte
> pode ser retirado pelo próprio shell simplesmente com
> ${z%?}
>
> Espero que seja de alguma utilidade.
> Questões?
> man bash
>
>
> ------------------------------------------------------------------
> >From: Fernando Garcia <address@hidden>
> >Date: Fri, 20 Apr 2007 18:01:37 -0300
> >
> >Olha o que aparecia:
> >
> >n: Fa0/47;2;2;1;Shutdown^M$ (Lembra microsoft, acho q por isso nao
> >funcionava :-D
> >
> >Removi com um sed e ta funcionando agora.
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
>
>


-- 
Abraços,
Julio
http://www.julioneves.com - Um livro sobre Bash completo e on-line
:wq


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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