Criando uma lixeira p/ o usuário
Publicado por Sandro Marcell 18/05/2007
[ Hits: 5.186 ]
Homepage: http://sanmarcell.wordpress.com
Ao remover arquivos com este script, ele criará uma lixeira para o usuário preservando arquivos para posterior recuperação.
Dica: Coloque está linha em seu .bash_profile:
alias rm=nome_do_script
Assim toda vez que executar o comando 'rm', você estará invocando este script e removerá seus arquivos de forma segura!
#!/bin/zsh ## Lixeira.sh - Shell script que cria uma lixeira para o usuário ## Escrito por: Sandro Marcell P. Barbosa (Boa Vista - Roraima) ## E-mail: sandro_marcell@yahoo.com.br ## Slackware GNU/Linux 10.1.0 # Remove arquivos e diretórios, sem pedido de confirmação # É possível o uso do metacaractere (*) # Uso: nome_script arquivo1 arquivo2 [arquivoN] # Realçando a saída do comando 'print': Print () print '\e[1m'"$*" ; tput sgr0 # Checa se o usuário passou algum parâmetro: [[ $# -eq 0 ]] && Print ">>> Uso: $(basename $0) arquivo1 [arquivoN]" && bye # Caso tenha passado, o script continua! # Criando a lixeira: LIXEIRA=/tmp/lixeira-$USER [[ ! -d $LIXEIRA ]] && mkdir $LIXEIRA # Setando as permissões para a lixeira: chmod u+rwx,go-rwx $LIXEIRA # Início do laço 'for': for A do # Será se o(s) arquivo(s), existe(m)? [[ ! -e $A ]] && Print "> Arquivo ou diretório não encontrado!" && continue # Se existir(em), o usuário pode removê-lo(s)? [[ ! -w $A ]] && Print "> Sem permissão para remover!" && continue # Se as condições acima forem satisfeitas: ls $A | xargs cp -R -f $A --target-directory=$LIXEIRA 2> /dev/null ls $A | xargs rm -R -f $A 2> /dev/null Print "Arquivo removido!" done
Implementando um simples manipulador de eventos de teclado
Compilador SH-Compiler usando GCC 4.6 no Debian Wheezy
[Firefox] Instalação de Flash Player 10
Postfix: Configurando o Gmail como Relay (moleza)
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
O Editor de Texto Nano: Simplicidade no Terminal
SynapSeq - programa para estimular as ondas cerebrais
Por que seu __DIR__ falhou ou o "inferno" dos caminhos no PHP
[Resolvido] Meu monitor suporta 100fps. Por que o máximo é 60fps nos jogos?
Jogando "Magic" gratuitamente no Linux
Zoxide e fzf no bash para incrementar o uso do Terminal
[pedido] biglinux versao 1 (0)
A falsa sensação de que entende a tal da palavra! (1)









