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

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

Re: [shell-script] bash - unexpected end of file


From: Mÿffffe4rcio Borges
Subject: Re: [shell-script] bash - unexpected end of file
Date: Fri, 31 Aug 2007 19:44:42 -0300 (ART)

Obrigado pela atenção.
   
  Márcio Borges
  

Tiago Barcellos Peczenyj <address@hidden> escreveu:
          bom, voltando ao shell

a estrutura while ... done que vc escreveu está correta. a unica forma
do shell não compreender o done seria se ele estivesse lendo outra
coisa como done1, dones, done_ ou done\r

entretanto eu fico preocupado com o fato do \r não ter atrapalhado o
hashbang #!/bin/bash -- deveria ser lido como /bin/bash\r e isso
causaria um "bad interpreter" [ a menos que vc executou o script
fazendo bash script.sh e não ./script.sh ]. por isso te sugeri que
fizesse um cat -A arquivo , se o done tiver algum caracter diferente
grudado como um ^M (que simboliza o \r) o seu problema está ai, caso
contrario é outro problema.

O bad interpreter eu ja abordei aqui:

http://peczenyj.blogspot.com/2007/07/resolvendo-problemas-comuns-2-bad.html

Bueno, quatro coisas podem atrapalhar quando vc passa um arquivo texto
do windows pro unix:

- final de linha \r\n ( 99% dos casos )
- encoding diferente (parece texto puro, mas é um UTF-8 ou algo mais exótico)
- ftp de arquivo no modo bin (ja vi acontecer, por incrivel que pareça)
- sem falar na lei de murphy :)

se o problema não estiver nos caracteres ( \r ) nem na codificação (
eu uso sempre ASCII purinho da silva ) então o seu while é pouco
'robusto'. O fato é que a variavel answer possui um \r no final do seu
valor (mensagem de debug : y\r ) e isso é indicio do problema com nova
linha do windows. Enfim, verifique com o cat -A ;-)

[off]
Não conheço o EditPlus tão bem. Eu uso o Scite no Windows e ele tem
uma opção para salvar com final de linha do unix, veja se existe
recurso semelhante. No Cygwin eu uso o Vi -- basta se acostumar. [
veja também: http://www.aurelio.net/cygwin/ ]
[/off]

On 8/31/07, Mÿffffe4rcio Borges <address@hidden> wrote:
> Outra pergunta Tiago, no Cygwin qual o Editor ? Estou rodando no script no 
> XP, tenho instalado o Cygwin.
>
> grato
-- 
Tiago B Peczenyj
Linux User #405772

http://peczenyj.blogspot.com/


                         

       Flickr agora em português. Você clica, todo mundo vê. Saiba mais.

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



reply via email to

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