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

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

Re: Como fazer um script rm -rf com | grep.


From: jeffdiasdosantos
Subject: Re: Como fazer um script rm -rf com | grep.
Date: Tue, 03 Jan 2006 17:27:23 -0000
User-agent: eGroups-EW/0.82

Galera obrigado pela atençao da lista.
Seguinte a dica que mais se enquadra a minha realidade é a Mauricio
com uma variavel e depois um for. Mais fiz um script basicao e quero q
deem uma olhada.
        
        #!/bin/bash
        echo "SELECIONANDO ARQUIVOS PARA SEREM DELETADOS"
        VAR=`ls -l | grep 2005-12-21 | tr -s ' ' | cut -d ' ' -f8`
        for ARQUIVO in "$VAR"
        do
        rm -rf $ARQUIVO
        done
        echo "ARQUIVOS DELETADOS COM SUCESSO"

Copiando o script do Mauricio, agora queria criar uma interatividade
do tipo:

                Qual data deseja deletar os arquivos?

Para nao ter que entrar no script e modificar o grep toda vez que eu 
     quizer executar este script.
        
Tipo tenho que criar uma variavel para o grep? Como?
        
        
Agradeço a galera do Find. Vou deletar arquivos de um só diretorio em
especifico, acredito q se fizer com o find vou deletar todos os
arquivos criados nesta data e esta nao é minha intençao. Se eu estiver
errado por favor me corrijam.
        
Obrigado.
        
Jefferson Dias
11-5503-2819
11-8195-3997
address@hidden





--- Em address@hidden, Humberto Pereira
<humberto.pereira@p...> escreveu
>
> Acredito q ele queira apagar dados criados em determinada data.
> Infelizmente o find nao te dah esse suporte, mas voce pode brincar um
> pouco com o date p/ isso.
> 
>       # pega o timestamp da data anterior
>       oldTimestamp=`date --date="$data" +%s`
> 
>       # pega o timestamp da data atual
>       actualTimestamp=`date +%s`
> 
>       # qtos segundos desde a data atual ate hj?
>       secs=`expr $actualTimestamp - $oldTimestamp`
> 
>       # isso sao qtos dias?
>       days=`expr $secs / 86000`
> 
>       # busca arquivos criados nesse dia e apaga eles
>       find ./ -ctime $days -exec rm -fr {}
> 
> 
> Espero q ajude.
> []s
> Humberto Pereira
> 
> 
> MrBiTs wrote:
> > -----BEGIN PGP SIGNED MESSAGE-----
> > Hash: SHA1
> > 
> > 
> >>Galera sou novo na lista e a companho, todos os emails com duvidas da
> >>galera. Mais ainda nao vi nada parecido com o que tenho de duvida
entao
> >>resolvi perguntar.
> >>Seguinte precido de um scritp que delete alguns arquivos pela data e
> >>nao pelo nome dos mesmos. Algo do tipo.
> >>rm -rf | grep 2005-12-21
> >>
> >>Isso passando o dia, mais nao consigo deleta-lo pois falta algo ate
> >>mesmo neste comando.
> >>Alguem pode me ajudar?
> > 
> > 
> > Já foi abordado, sim. O que você quer é apagar todos os arquivos ou
> > diretórios que tenham em seu nome o 2005-12-21. Para isso você
pode usar
> > um simples find:
> > 
> > $ find . -name "*2005-12-21" -exec rm -rf {} \;
> > 
> > Se o problema é um pouco diferente e você quer apagar arquivos que
foram
> > criados há uma semana, você pode fazer algo como:
> > 
> > $ find . -ctime +7 -exec rm -rf {} \;
> > 
> > 
> > 
> > - --
> > GPG Public Key
> > http://keyserver.veridis.com:11371/export?id=-6037232142263389818
> > 
> >          \\|||//
> >          (.) (.)
> > - ----ooOO--( )--OOoo-----
> >       MrBiTs
> > http://www.mrbits.com.br
> >   mrbits@t...
> > - ------------------------
> > -----BEGIN PGP SIGNATURE-----
> > Version: GnuPG v1.4.1 (GNU/Linux)
> > Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
> > 
> > iD8DBQFDup1/rDdxWm3R8YYRAh8pAKCQCoIROOcSZHE5k1UABZGG0kl6MgCeORIp
> > 7iLePV1Rp39/3jjv1CcA5ME=
> > =agPe
> > -----END PGP SIGNATURE-----
> > 
> > 
> > ---------------------------------------------------------------------
> > Esta lista não admite a abordagem de outras liguagens de
programação, como perl, C etc. Quem insistir em não seguir esta regra
será moderado sem prévio aviso.
> > ---------------------------------------------------------------------
> > Sair da lista: address@hidden
> > ---------------------------------------------------------------------
> > Esta lista é moderada de acordo com o previsto em
http://www.listas-discussao.cjb.net
> > ---------------------------------------------------------------------
> >  
> > Links do Yahoo! Grupos
> > 
> > 
> > 
> > 
> >  
> > 
> >
>






reply via email to

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