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: Bruno Gunter Fricke
Subject: Re: [shell-script] Exibição variaveis
Date: Fri, 20 Apr 2007 21:45:57 -0300

Ha!
Normal. Abro códigos escritos no notepad, dreamweaver e etc pelo vi e sempre tenho o "^M". Um saco isso. Esse "circunflexo eme" é do MS Char... Já vi programas serem abertos no notepad, ganhar um comentário (nenhum código real) e serem salvos e passarem a dar erro. Muito sinistro.


----- Original Message ----- From: "mop" <address@hidden>
To: <address@hidden>
Sent: Friday, April 20, 2007 9:24 PM
Subject: Re: [shell-script] Exibição variaveis


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





reply via email to

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