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

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

Re: [shell-script] Controle de arquivos apagados


From: Bruno
Subject: Re: [shell-script] Controle de arquivos apagados
Date: Fri, 18 Oct 2002 14:10:35 -0300

Olah Julio Cezar Neves,

fikei muito grato quando vc me enviou o script para controle dos arquivos
removidos, mas ao enviar minha duvida nao fui muito claro com que queria
relamente... o que eu tava imaginando esses dias eh ter o controle de
arquivos apagados nos diretorios compartilhados no server Samba para os
maquinas clientes Windows sacou (o usuario win seleciona um arquivo e aperta
delete)? Bem, pode ate ser que esse script ae resolva tudo, se resolver,
desculpe minha ignorancia.

Uma abraco, saude e paz para todos!!!!

----- Original Message -----
From: Julio Cezar Neves - DATAPREVRJ
<address@hidden>
To: <address@hidden>
Sent: Monday, October 14, 2002 12:00 PM
Subject: RES: [shell-script] Controle de arquivos apagados


Taí o que vc pediu.

Prompt> cat rm.sh
#
#  Salvando Copia de Arquivo Antes de Remove-lo
#

if  [ $# -eq 0 ]
then
    echo "Erro -> Uso: $0 arq [arq] ... [arq]"
    echo "        O uso de metacaracteres eh permitido. Ex. $0 arq*"
    exit 1
fi

MeuDir="/tmp/$LOGNAME"
if  [ ! -d $MeuDir ]
then
    mkdir $MeuDir
fi

if  [ ! -w $MeuDir ]
then
    echo Impossivel salvar arquivos em $MeuDir. Mude permissao e tente
novamente...
    exit 2
fi

Erro=0
for Arq
    if  [ ! -f $Arq ]
    then
        echo $Arq nao existe.
        Erro=3
        continue
    fi

    DirOrig=`dirname $Arq`
    if  [ ! -w $DirOrig ]
    then
        echo Sem permissao de remover no diretorio de $Arq
        Erro=4
        continue
    fi

    if  [ "$DirOrig" = "$MeuDir" ]
    then
        echo $Arq ficara sem copia de seguranca
        rm -i $Arq
        [ -f $Arq ] || echo $Arq removido
        continue
    fi

    cd $DirOrig
    pwd >> $Arq
    mv $Arq $MeuDir
    echo $Arq removido
    cd -
done
exit $Erro

Repare que ao final do prog., antes de fazer o mv eu incluo o diretório de
original do arquivo, para permitir que ele seja recuperado automaticamente
pelo undelete.sh, cujo código vem a seguir:

Prompt> cat undelete.sh
#!/bin/ksh
#
# Restaura arquivos deletados via rm.sh
#

if [ $# -eq 0 ]
then
    echo "Uso: $0 <Nome do Arquivo a Ser Restaurado>"
    exit 1
fi

Dir=`tail -1 /tmp/$LOGNAME/$1`
grep -v $Dir /tmp/$LOGNAME/$1 > $Dir/$1
rm /tmp/$LOGNAME/$1



[ ]s,
Julio Cezar Neves
-Eu Apoio o Software Livre-
-I Support Free Software-
* +55 21 2528-7070  /  9853-4044
*address@hidden


> -----Mensagem original-----
> De: Bruno [mailto:address@hidden]
> Enviada em: segunda-feira, 14 de outubro de 2002 11:55
> Para: address@hidden
> Assunto: [shell-script] Controle de arquivos apagados
>
>
> Essa foi a duvida e um colega da lista que tb eh uma duvida
> minha, responderam a ele dizendo que ja tinham colocado um
> scipt que fazia isso na lista, como entrei na lista dia 11/10
> naum vi isto, alguem poderia dar uma ajuda?!
>
> > Hey Pessoal
> > Tenho muitos problemas com usuários que excluem
> > arquivos acidentalmentre.
> > Assim preciso implementar uma especie de lixeira remota no
> > linux para que
> > quando o usuário tente excluir um arquivo compartilhado via
> SAMBA, ele
> > mova-o para um diretório expecífico(um LIXÃO). Seria como
> substituir o
> > comando "rm" por "mv". Então eu rodaria via cron uma rotina
> > que exclua esses
> > arquivos a cada 10 ou 20 dias.
> >
> > De ante mão agradeco as sugestões.
>
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>
>
> ---------------------------------------------------------------------
> 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.listasdiscussao.cjb.net
---------------------------------------------------------------------


Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
http://br.yahoo.com/info/utos.html



---------------------------------------------------------------------
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.listasdiscussao.cjb.net
---------------------------------------------------------------------


Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
http://br.yahoo.com/info/utos.html






reply via email to

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