Criando uma lixeira p/ o usuário
Publicado por Sandro Marcell 18/05/2007
[ Hits: 5.045 ]
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
SSH - Detecta ataque por brute force e bloqueia o IP do atacante.
Automatizando backups no Samba
Qt 6.10 e Python 3.14 puxam o ritmo do software livre nesta quarta
Atualizações de Apps, Desktop e Kernel agitam o ecossistema Linux nesta terça-feira
Miyoo Mini Plus + Onion OS (Linux)
IA local no bolso, novo visual no Raspberry Pi OS e mais destaques do software livre
Kernel turbinado, compatibilidade em alta e debate sobre sustentabilidade: o dia no mundo Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Como listar os arquivos em "bloquin... [RESOLVIDO] (6)
Como colocar atalho para uma pasta na área de trabalho do Ubuntu 24.04... (2)