Adorei tua solução muito boa!
Com ela se a sequencia tiver furos ele não tenta remover um arquivo 
inexistente como nos outros exemplos que foram propostos.
Parabéms!

Fernando Luizao escreveu:
>  
>
> Uma com awk:
>
> ls -l | awk 'substr($9, 6, 4) < 1379 { print $9 }' | xargs rm
>
> Explicando:
>
> O substr vai cortar 4 caracteres do nono campo (no nosso caso, o nome 
> do arquivo, por exemplo BD_1_1373_693048009.arc), a partir do sexto 
> caracter, cortando apenas o número (1373). Com o número cortado, 
> fazemos a comparação com o que queremos, e se a comparação for 
> verdadeira, imprimimos o nono campo (nome do arquivo). A saída é então 
> jogada para o *rm* por meio do *xargs*, então se vc quiser testar, é 
> só tirar o "| xargs rm" pra não correr o risco de perder nada =).
>
> Abraços
>
> --- Em qua, 28/4/10, thiagomz <[email protected] 
> <mailto:thiagozerbinato%40yahoo.com.br>> escreveu:
>
> De: thiagomz <[email protected] 
> <mailto:thiagozerbinato%40yahoo.com.br>>
> Assunto: [shell-script] Apagar sequencia de arquivos
> Para: [email protected] 
> <mailto:shell-script%40yahoogrupos.com.br>
> Data: Quarta-feira, 28 de Abril de 2010, 14:03
>
>  
>
> Pessoal,
>
> Tenho um diretório com arquivos sequenciais, como abaixo:
>
> -rw-r----- 1 oracle oinstall 128271872 Apr 28 09:27 
> BD_1_1373_693048009 .arc
>
> -rw-r----- 1 oracle oinstall 128271872 Apr 28 10:18 
> BD_1_1374_693048009 .arc
>
> -rw-r----- 1 oracle oinstall 128271872 Apr 28 10:56 
> BD_1_1375_693048009 .arc
>
> -rw-r----- 1 oracle oinstall 128271872 Apr 28 11:26 
> BD_1_1376_693048009 .arc
>
> -rw-r----- 1 oracle oinstall 128271872 Apr 28 11:49 
> BD_1_1377_693048009 .arc
>
> -rw-r----- 1 oracle oinstall 128271872 Apr 28 12:10 
> BD_1_1378_693048009 .arc
>
> -rw-r----- 1 oracle oinstall 128271872 Apr 28 12:18 
> BD_1_1379_693048009 .arc
>
> O que eu gostaria é deletar tudo que for menor que o sequencial 1379.
>
> att.
>
> thiagomz
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 


Responder a