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: Elder Marco
Subject: Re: [shell-script] Re: Ler linha com espaços no início
Date: Thu, 8 Nov 2012 21:54:05 -0200

2012/11/8 Julio C. Neves <address@hidden>
>
> Vc não deixou o último diálogo da thread e por isso não sei a qual das
> respostas que dei à lista vc está se referindo.
>

Olá Júlio, desculpe. Vou repetir novamente abaixo. Mas antes, o meu
script já usava aspas, conforme
você sugeriu. Enquanto eu criava um arquivo de dados como exemplo, eu
obtive exatamente o comportamento
esperado, os espaços no início da linha.  No entanto, o mesmo não
acontece com um outro arquivo e eu não
consegui perceber o porquê. Apresento abaixo o script e os arquivos.


Eis o script de exemplo:

$ cat script.sh
while read line; do
        echo "$line"
done < "$1"

$

Os arquivos de exemplo que tenho são:

$ cat dados.txt
     **    10  20 30 4
     **    56  70 84 90
           10  20  58
$

e

$ cat dados2.txt
        ***  4   6  7
        ***  8   6  7
        ***  9   6  7
$


Rodando o script com esses dois arquivo, obtenho:

$ ./script.sh dados.txt
    **    10  20 30 4
    **    56  70 84 90
          10  20  58
$


Mas se eu rodar com o arquivo dado2.txt, eu tenho
$ ./script.sh dados2.txt
***  4   6  7
***  8   6  7
***  9   6  7
$

Ou seja, no último caso, os espaços em branco são removidos. Eu não
consegui perceber qual é a diferença entre um
arquivo e outro, de forma num deles os espaços são removidos e no
outro não. No meu arquivo original, com vários
dados, é esse segundo comportamento que prevalece e daí necessitei
alterar o valor de IFS.


---
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)


reply via email to

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