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

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

Re: [shell-script] Problemas com a interpretação de "$"


From: Paulo Soares Drumond
Subject: Re: [shell-script] Problemas com a interpretação de "$"
Date: Thu, 4 Nov 2010 14:05:42 -0200

Obrigado, Vinícius.

Peguei a relação de números e coloquei num arquivo texto, um por linha
e em seguida passei este conteúdo para a variável "conteudo".

O arquivo (vlistaout) estava assim:
2939
3135
3365
3414
...

Usei conteudo=`more vlistaout`

Paulo
http://homens-ibcc.blogspot.com
http://www.twitter.com/psdrumond

"E se o meu povo, que se chama pelo meu nome, se humilhar, e orar, e
buscar a minha face e se converter dos seus maus caminhos, então eu
ouvirei dos céus, e perdoarei os seus pecados, e sararei a sua terra."
(II Crônicas 7:14)


Em 4 de novembro de 2010 13:33, Vinicius Xavier
<address@hidden> escreveu:
>
> Olá Paulo,
>
>
>
> Fiz o comando igual ofr igual ao que vc postou, e deu certo.
>
>
>
>
>
>  ~ $ echo $conteudo
> 4444 5555 6666 7777
>
>  ~ $ for item in $conteudo ; do echo newtask_CMOST8o_Paulo_o$item.log; done
> newtask_CMOST8o_Paulo_o4444.log
> newtask_CMOST8o_Paulo_o5555.log
> newtask_CMOST8o_Paulo_o6666.log
> newtask_CMOST8o_Paulo_o7777.log
>
> Pode passar mais detalhes? Pode dar um echo na variável e mostra como está?
>
>
>
> Abs,
>
> Vinícius Xavier
>
> --- Em qui, 4/11/10, Paulo Soares Drumond <address@hidden> escreveu:
>
> De: Paulo Soares Drumond <address@hidden>
> Assunto: [shell-script] Problemas com a interpretação de "$"
> Para: "Lista de discussão sobre Shell Script" <address@hidden>
> Data: Quinta-feira, 4 de Novembro de 2010, 12:58
>
>
> Olá,
>
> Participo pouco da lista e hoje me deparei com um problema que deve
> ter solução simples mas que não consegui resolver das maneiras que
> tentei.
>
> Tenho uma quantidade enorme de arquivos gigantescos num diretório e
> preciso apagar a maioria deles. Filtrei aqueles que preciso manter e
> agora precisarei apagar todos os demais e aí começou meu problema.
>
> Os arquivos são nomeados da seguinte forma: newtask_CMOST80_Paulo_09999.XXX
> sendo:
> - 9999 um número entre 0 e 5446;
> - XXX uma das seguintes extensões: log, dat, out, irf, mrf.
>
> Coloquei na variável "conteudo" a lista dos números dos arquivos que
> preciso manter, mas quando comecei a esboçar algo esbarrei no seguinte
> problema:
> for item in $conteudo; do echo newtask_CMOST80_Paulo_0$item.log; done
>
> Eu esperava que ele retornasse algo como:
> newtask_CMOST80_Paulo_09999.log
>
> Mas ele retorna uma lista de strings mais ou menos assim:
> .logask_CMOST80_Paulo_09999
>
> onde 9999 é o número do arquivo.
>
> Se eu substituo ".log" por ".*" ele faz a mesma substituição na saída.
>
> Já tentei colocar o \, ", `, ', {} e nada resolveu o problema.
> Pensando que o problema era do echo, alterei o comando para ls e o
> mesmo aconteceu.
>
> O que estaria faltando para que apareçam corretamente os nomes dos arquivos?
>
> Paulo
> http://homens-ibcc.blogspot.com
> http://www.twitter.com/psdrumond
>
> "E se o meu povo, que se chama pelo meu nome, se humilhar, e orar, e
> buscar a minha face e se converter dos seus maus caminhos, então eu
> ouvirei dos céus, e perdoarei os seus pecados, e sararei a sua terra."
> (II Crônicas 7:14)
> 


reply via email to

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