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:06:00 -0200

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]