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

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

Re: [shell-script] Como armazenar a saida de erro em variável?


From: Julio C. Neves
Subject: Re: [shell-script] Como armazenar a saida de erro em variável?
Date: Sun, 18 May 2008 11:52:56 -0300

Sempre penso que em listas o negócio é simplificar e desmistificar. No caso
do 0a, o que fiz foi uma simplificação para facilitar a compreensão, da
mesma forma que disse que todos os caracteres do IFS se apresentam como
branco, o que tb é uma simplificação, pois o Shell os trata como zeros
binários (NULL), e apresenta-os como branco.

Acho que existem fóruns para vc mostrar toda a sua sabedoria como dicas-l
(onde até convidei-o em pvt a escrever um artigo sobre tratamento de arquivo
e vc não respondeu) e outra excelentes páginas da internet e existem fóruns
para resolver problemas pontuais, como são as listas, onde devemos
esclarecer o melhor possível, escrevendo o mínimo indispensável que permita
que os mais novos acompanhem nosso raciocínio.

Pense no convite das dicas-l que lhe fiz. Abração,
Julio


2008/5/18 mop <address@hidden>:

> Legal você reforçar o detalhe das aspas!
> Com freqüência os mais novos esquecem que em alguns comandos,
> sem as aspas,
> os caracteres consecutivos
> com exemplar contido em IFS
> são substituidos por um único espaço.
>
>
> Apenas acrescentaria, que vejo o ENTER citado como intrínseco ao echo.
> Aquele do teclado, apenas avisa ao shell para "entrar" o comando digitado.
> Apesar de uma distração óbvia, para os novatos pode confundir.
>
> Até escrevo, mais pelo efeito que esse "0a" tem, quando está envolvido um
> md5sum, wc -c, ${#VAR}, etc. e que costuma nos fazer perder mais uns fios
> de
> cabelo até achar o "bug". Assim, reforçando:
>
> $ echo $IFS|od -An -tx1
>  0a
> $ echo "$IFS"|od -An -tx1
>  20 09 0a 0a
> $ echo -n "$IFS"|od -An -tx1
>  20 09 0a
> $ printf "$IFS"|od -An -tx1
>  20 09 0a
> $ printf '$IFS'|od -An -tx1
>  24 49 46 53
> $ printf "$IFS\r"|od -An -tx1
>  20 09 0a 0d
>
> Para aqueles que costumam esquecer o efeito das aspas e do apóstrofo a
> recomendação é brincar um pouco no prompt (pela praticidade) para tentar
> memorizar melhor esse comportamento do shell. O resultado é mais efetivo
> ao fazer isso quando realmente se está a precisar desse conhecimento,
> custando apenas alguns minutos, que são amplamente recuperados,
> com juros, posteriormente.
>
>
>
> ------------------------------------------
> >From: "Julio C. Neves"
> >
> >$ echo "$IFS" | od -h
> >0000000 0920 0a0a
> >
> >O od -h de dá um dump em hexadecimal, onde:
> >
> >09 - <TAB>
> >20 - <espaço em branco>
> >0a - <ENTER>
> >o segundo 0a foi o <ENTER> que dei ao final da linha.
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> 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
>
>
>


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



reply via email to

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