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

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

Re: xargs com rm e logs


From: phribbr
Subject: Re: xargs com rm e logs
Date: Thu, 10 Nov 2011 15:45:56 -0000
User-agent: eGroups-EW/0.82

Boa tarde, Alexandre!!!

 Na verdade era os arquivos com tempo de acesso mesmo, expliquei errado, me 
desculpe!

Com o xargs tem a opcao para remover os dados com espacos sim, basta
utilizar o -print0 para o find e o "-0" para o xargs.
#find /data - atime +5 -type f -print0 | xargs -0 rm

O problema mesmo eh o log detalhado dos arquivos que serao removidos. Tudo isso 
em apenas uma execucao apenas do find.


OK!
Paulo Henrique

--- Em address@hidden, Alexandre Mulatinho <alex@...> escreveu
>
> Bom dia,
> 
> Se voce quiser dados mais antigos que 5 dias acho que nao deveria utilizar
> o termo 'atime' (acessados depois de cinco dias) e sim o 'mtime'
> (modificados depois de 5 dias). Outra coisa, com o xargs vc corre o risco
> de nao remover arquivos com espaço, acho que o ideal seria utilizar:
> 
> find /data -mtime +5 -type f -exec rm -fv '{}' \; 2>&1 >$LOGS/removidos
> 
> Atenciosamente,
> *Alexandre Mulatinho*
> Weblog: http://alex.mulatinho.net
> 
> 2011/11/10 phribbr <pribeiro@...>
> 
> > **
> >
> >
> > Pessoal, bom dia!
> >
> > Gostaria de uma ajuda.
> >
> > Tenho uma area que devera ter os dados mais antigos(5 dias) removidos e
> > tambem gostaria de ter um log mais detalhado(ls -l) desses arquivos que
> > foram removidos.
> >
> > //Para a remocao e com um log com o minimo detalhe jah esta funcionando.
> > Esta pegando a saida do caomando "rm -v".
> >
> > #find /data - atime +5 -type f -print0 | xargs -0 rm -v | tee -a
> > $LOGS/removidos
> >
> > Entao, gostaria de executar o comando acima, MAS gerando um log mais
> > detalhado dos dados que foram removidos. ou seja, um "ls -l" dos dados
> > removidos em apenas uma linha de comando.
> >
> > OBS1: Tem como fazer isto, utilizando 2 linhas de comando e 2 vezes o
> > comando find. Assim funciona, e ja me serve, mas como desafio, estou
> > tentando realizar isto apenas em uma linha.
> >
> > # find /data - atime +5 -type f -print0 | xargs ls -l > $LOG/logrm
> > # find /data - atime +5 -type f -print0 | xargs rm
> >
> > - Estou tentando com o "awk" mas tambem estou travando em arquivos com
> > espacos nos nomes.
> >
> > OK!
> >
> > Qualquer ajuda sera bem vinda.
> > Paulo Henrique
> >
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>




reply via email to

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