[FUG-BR] [OFF-TOPIC] Ajuda comShell Script

Fabiano Caixeta Duarte fcd.listas em gmail.com
Terça Novembro 18 15:38:50 BRST 2008


2008/11/18 Sendoh Takeshi <sendoh.takeshi em gmail.com>

>
> Boa tarde.
>
> Tenho um programa que gera dados a partir de medições de vários aparelhos e
> grava esse dados em um formato especial.
> A partir daí, é feito o download dessa base de dados em outra máquina,
> compactado. O arquivo então é descompactado gerando vários arquivos do tipo
> 00-01 , 01-01 , 02-01 , etc.
> Foi criado um script pra automatizar todo o processo, mas tem partes em que
> estou encontrando bastante dificuldade por não ser  "íntimo" do shell
> script.
> Em determinado momento, acontece a seguinte situação:
>
> ............................................
> *tar -zxvf /tmp/dados/arquivo.tgz
> *
>
> *for i in 00-01 01-01 02-01 03-01 04-01 05-01 06-01 07-01 08-01 09-01 *
>
> *do
>     comandos...*
>
> *done*
>
> *restante do script...*
>
>
>
> No for, estão as extensões dos arquivos descompactados (o prefixo é igual
> para todos) e toda vez antes de rodar o script estão sendo inseridos na
> mão.
> Gostaria de automatizar isso. Mas tem outro problema: nem sempre os
> arquivos
> são sequenciais (00-01, 01-01, 02-01), pode ter 01-02, 02-03 e assim por
> diante, mas sempre mantém este tipo de extensão. E também, a quantidade de
> arquivos descompactados também é váriavel, como no exemplo de cima tem 10
> arquivos (e todos sequenciais), mas pode ter 5, 15, 20, 30 arquivos; sendo
> ou não sequenciais; depende (e varia) muito.
>
> Minha dúvida é: Como eu poderia fazer para que o for pegasse os valores
> ("extensões" dos arquivos) a partir desse diretório? Ler os arquivos que
> estão no diretório usado e colocá-los no laço for, independente da
> quantidade e se são ou não sequenciais.
>
> obs: No diretório ficam somente esses arquivos, do tipo prefixo-00-01.
> prefixo-01-02, prefixo-03-02, etc
>

Se no diretório ficam somente estes arquivos, não precisa especificar um a
um. Faça:

for i in *; do
   comandos
done

Tá complicando à toa! ;)

-- 
Fabiano Caixeta Duarte
Especialista em Redes de Computadores
Linux User #195299
Ribeirão Preto - SP


Mais detalhes sobre a lista de discussão freebsd