+ Responder ao Tópico



  1. #1

    Padrão Script para limpar lixeira

    Ola pessoal,
    Estou precisando de um script que faça a limpeza automática dos arquivos antigos enviados a lixeira do SAMBA.

    Alguem tem alguma dica?

    Obrigado

  2. #2

    Padrão Re: Script para limpar lixeira

    Citação Postado originalmente por eduroges
    Ola pessoal,
    Estou precisando de um script que faça a limpeza automática dos arquivos antigos enviados a lixeira do SAMBA.

    Alguem tem alguma dica?

    Obrigado
    eu fiz um script, mas to sem ele aqui, vou tentar publicar ele assim que eu tiver em mãos

  3. #3

    Padrão Re: Script para limpar lixeira

    Na verdade eu precisava de um comando ou script para apagar arquivos antigos que foram enviados às lixeiras do SAMBA.
    Essas lixeiras são diretórios e estão espalhadas em vários locais dentro de /home.

    Eu "quase consegui com o seguinte comando:
    Código :
    find /home -name .recycle -type d -exec find {} -mtime +5 \; | xargs rm -f

    O problema é que ele acha os arquivos, mas não exclui. Acredito que seja um problema com os "nomes longos do Windows".
    Alguem tem alguma dica?

  4. #4

    Padrão Re: Script para limpar lixeira

    Caro eduroges

    Abaixo estou enviando o conteúdo do script que utilizo para limpar a lixeira do samba. No meu caso eu deleto os arquivos que foram deletados há 3 dias atrás.

    find <pasta_lixeira> -type f -ctime 3 2> /dev/null |
    while read arquivo; do
    /bin/rm -f "$arquivo";
    done

    Substitua o <pasta_lixeira> pela pasta que você utiliza para armazenar os arquivos deletados.

    Espero ter ajudado.

  5. #5
    EvertonCastro
    Visitante

    Padrão Re: Script para limpar lixeira

    Ae meos... Segue o meu script pra limpar as lixeiras... se não for informado a quantidade de dias ele assume 5 dias...

    #!/bin/bash
    # log
    logfile=/var/log/removedor.log
    # tempo em dias
    [ "$1" ] && dias=$1 || dias=5

    #echo \n >>$logfile
    echo "===============`date +%d-%m-%Y`====================" >> $logfile
    find / -name .recycle > /tmp/limpa-recycle.tmp
    cat /tmp/limpa-recycle.tmp | while read dir ; do find $dir -type f -mtime $dias -exec ls -l {} \; >> $logfile ; done ;
    cat /tmp/limpa-recycle.tmp | while read dir ; do find $dir -type f -mtime $dias -exec rm -f {} \; ; done ;

    echo "======================FIM==========================" >> $logfile

    Espero ter ajudado.

    :-)