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

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

Re: [shell-script] Problemas com o CAT, credo!!!


From: Frederico Bohne Espinosa
Subject: Re: [shell-script] Problemas com o CAT, credo!!!
Date: 29 Oct 2002 12:58:00 -0300

        Alexander:

        Espero que ajude....
------------------------------------------------
#!/bin/bash
ARQUIVO=<path do arquivo>
i=1
NRL=`wc -l $ARQUIVO | awk '{print $1}'`

while [ $i -le $NRL ]
  do

     echo $i "`cat $ARQUIVO | head -$i | tail -1`"
     i=`expr $i + 1`
  done
-------------------------------------------------------


                                      Bohne


On Tue, 2002-10-29 at 10:45, address@hidden wrote:
> Olá!!
> 
> Hummm... estou tendo problemas com o comando cat!!
> 
> Quero fazer um script para ler as linhas de um arquivo e numerá-las.
> 
> Algo como:
> 
> #!/bin/bash
> 
> let i=0
> 
> for linhas in `cat arquivo_com_linhas`
> do
> 
>  let i=i+1
> 
>  echo $i$linhas
> 
> done
> 
> 
> O script funciona normalmente. Mas só funciona quando as linhas do arquivo
> não possuem espaços, ou seja, num arquivo como o abaixo o script funciona:
> 
> linha1
> linha2
> linha3
> 
> Mas num arquivo como o abaixo o script não funciona:
> 
> linha um
> linha dois
> linha três
> 
> O problema é que o script numera, mas separa as palavras como se fossem
> linhas.
> 
> No segundo arquivo o resultado é o seguinte:
> 
> 1linha
> 2um
> 3linha
> 4dois
> 5linha
> 6três
> 
> Ou seja, ele quebra as linhas nos espaços e isso inutiliza meu script.
> 
> Já tentei usar:
> 
> for linhas in "`cat arquivo_com_linhas`"
> 
> Mas neste caso o resultado de $linhas é todo o arquivo. Na hora de numerar
> ele pega todo o conteúdo e coloca um único numero 1 na frente do conteúdo.
> 
> Já tentei usar o less e o more, mas o resultado é sempre o mesmo.
> 
> O que eu posso fazer?
> 
> Agradeço qualquer ajuda!
> Abraços!
> Alexander
> address@hidden
-- 
Frederico Bohne Espinosa <address@hidden>


reply via email to

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