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

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

Re: [shell-script] Comando Echo


From: Tiago Peczenyj
Subject: Re: [shell-script] Comando Echo
Date: Tue, 28 Dec 2010 17:15:10 -0200

Vc pode alterar o IFS - input field separator - para ignorar espaços.

pacman:~ peczenyj$ cat -e xxx
1    $
12   $
123  $
1234 $
12345$

pacman:~ peczenyj$ cat xxx| while read LINHA; do echo "'$LINHA'"; done
'1'
'12'
'123'
'1234'
'12345'

pacman:~ peczenyj$ cat xxx| while IFS='\n' read LINHA; do echo "'$LINHA'";
done
'1    '
'12   '
'123  '
'1234 '
'12345'

Basicamente o cat xxx envia a linha '1     ' porem o read identifica apenas
o 1 pois os outros espaços não são considerados como parte do argumento.
IMHO vc não deveria fazer cat arquivo | while read ... pois podem ter outras
formas de processar o arquivo linha a linha que preservem a estrutura do
mesmo.

2010/12/28 Adolfo - R7 <address@hidden>

>
>
> Colegas;
>
> Tenho um arquivo texto mais ou menos da seguinte forma:
>
> 1
> 01
> 001
> 0001
> 00001
>
> Quando digito o comando abaixo:
>
> cat arquivo.txt |while read LINHA
> do
> codigo=`echo "$LINHA"|cut -c1-5`
> echo "$codigo"
> done
>
> É retornado as informações da forma abaixo sem os espaços à esquerda:
>
> 1
> 01
> 001
> 0001
> 00001
>
> Como faço para que seja mostrado também os espaços à esquerda no comando
> echo?
>
> Adolfo Verçosa
> Fortaleza-Ce
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
Tiago B. Peczenyj
Linux User #405772

http://pacman.blog.br


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



reply via email to

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