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

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

Re: [shell-script] Re: Ler linha com espaços no início


From: Alysson Gonçalves de Azevedo
Subject: Re: [shell-script] Re: Ler linha com espaços no início
Date: Fri, 9 Nov 2012 19:09:49 -0200

Mas ratificando, da forma que  vc mandou, também não funciona pra mim não.



Alysson Gonçalves de Azevedo - (11) 984 917 730

"É curioso como as pessoas ficam confusas quando a frase não terminam do
jeito que elas periquito."



Em 9 de novembro de 2012 19:06, Alysson Gonçalves de Azevedo <
address@hidden> escreveu:

> Obs: Agora que vi que isso vc ja sabia e que a questão é fazer funcionar
> sem o ifs.
>
> ignore-me xD
>
>
>
> Alysson Gonçalves de Azevedo - (11) 984 917 730
>
> "É curioso como as pessoas ficam confusas quando a frase não terminam do
> jeito que elas periquito."
>
>
>
> Em 9 de novembro de 2012 19:04, Alysson Gonçalves de Azevedo <
> address@hidden> escreveu:
>
> Testei aqui e funcionou assim:
>> #!/bin/bash
>> IFS=$'\n'
>>
>> while read line; do
>>       echo "$line"
>> done < "$1"
>>
>>
>>
>>
>> Alysson Gonçalves de Azevedo - (11) 984 917 730
>>
>> "É curioso como as pessoas ficam confusas quando a frase não terminam do
>> jeito que elas periquito."
>>
>>
>>
>> Em 9 de novembro de 2012 18:54, Elder Marco <address@hidden>escreveu:
>>
>>  **
>>>
>>>
>>> Olá Júlio,
>>>
>>> É quase isso. Você apenas se confundiu em relação ao conteúdo do
>>> arquivo dados2.txt.
>>> Vejamos:
>>>
>>> 2012/11/9 Julio C. Neves <address@hidden>:
>>>
>>> > Vamos colocar o que vc disse nas palavras que *eu* entendi:
>>> > Quando vc executa o script da forma que te sugeri e que vc já havia
>>> testado
>>> > (usando "$line") usando o arquivo:
>>> > $ cat dados.txt
>>> > ** 10 20 30 4
>>> > ** 56 70 84 90
>>> > 10 20 58
>>> > Tudo funcionava as mil maravilhas e os espaços iniciais eram mantidos.
>>> Isso mesmo. Se eu utilizar esse arquivo, os espaços iniciais são
>>> mantidos sem
>>> nenhum problema.
>>>
>>> > Já se vc usasse o arquivo:
>>>
>>> > $ cat dados2.txt
>>> > *** 4 6 7
>>> > *** 8 6 7
>>> > *** 9 6 7
>>> > Dava zebra e os espaços em branco não eram preservados. OK? Então p.
>>> favor
>>> > me explique, pq foi aí que não entendi: a quais espaços em branco vc se
>>> > refere em dados2.txt?
>>> >
>>> Então, esse não é o conteúdo do arquivo, mas a saída do script depois
>>> de ler as linhas
>>> do arquivo dados2.txt O conteúdo do arquivo em si apresenta espaços
>>> iniciais da mesma
>>> forma que o anterior. Para ficar mais claro como está a formatação
>>> desses dois arquivos,
>>> coloquei eles num pastebin da vida, bem como o script.
>>>
>>> Eis:
>>>
>>> script.sh:
>>> - http://paste.stg.fedoraproject.org/1620/
>>> * Note o uso das aspas tem "$line"
>>>
>>> dados.txt:
>>> - http://paste.stg.fedoraproject.org/1618/
>>> * funciona sem problemas. Os espaços em branco são impressos na tela como
>>> deveriam.
>>> dados2:txt:
>>> - http://paste.stg.fedoraproject.org/1619/
>>> * O que dá problema. Os espaços em branco no início da linha
>>> não aparecem e
>>> não faço ideia do porquê.
>>>
>>> Em resumo, se eu fizer:
>>>
>>> $ ./script.sh dados.txt
>>>
>>> Funciona.
>>>
>>> $ ./script.sh dados2.txt
>>>
>>> Não irá funcionar. Todos os espaços a partir do início da linha até o
>>> primeira caractere
>>> que não é um espaço serão removidos sem dó nem piedade. :)
>>>
>>> Não sei se essa é uma informação importante, mas fiz isso no fedora 17
>>> utilizando
>>> o bash 4.2.37.
>>>
>>> --
>>> Elder Marco
>>>
>>> GNU/Linux User: #471180
>>>
>>> "Contra o positivismo, que pára perante os fenômenos e diz: 'Há apenas
>>> fatos', eu digo: 'Ao contrário, fatos é o que não há; há apenas
>>> interpretações'. "(Nietzsche)
>>>
>>>  
>>>
>>
>>
>


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



reply via email to

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