Criando uma lixeira [Melhorado]
Publicado por Sandro Marcell 18/07/2007
[ Hits: 5.319 ]
Homepage: http://sanmarcell.wordpress.com
Versão melhorada de um script que cria uma simples lixeira para o usuário. (Versão CShell)
Dica:
Coloque esta linha em seu .bashrc:
alias rm=nome_do_script
Assim toda vez que você chamar pelo terminal o comando rm, estará invocando este script.
Falou!!!
#!/bin/csh # # Criando uma simples lixeira. # (Versão CShell) # # Autor: Sandro Marcell (sandro_marcell@yahoo.com.br) # # Obs.: # Arquivos e diretórios são removidos sem pedido de confirmação. # É possível o uso do metacaractere (*). # A opção -r remove a lixeira. # Checando parâmetros: if ($#argv == 0) then echo "Uso: `basename $0` arquivo1 [arquivoN]\ ou\ `basename $0` -r [Para remover a lixeira]" exit endif # Criando a lixeira: set LIXEIRA = $home/lixeira if (! -e $LIXEIRA) then mkdir $LIXEIRA endif # O que fazer? switch ($argv[1]) # Remover a lixeira! case -r: # Descartando a opção -r: shift # Checando parâmetros: if ($#argv >= 1) then echo "Erro: A opção [-r] não aceita parâmetros!" exit else # Perguntando antes de remover: echo -n "Deseja realmente remover a lixeira? [s/n]:" # Capturando resposta: set R = $< # Checando resposta: if ($R == s || $R == S) then # Removendo rm -R -f $LIXEIRA >& /dev/null echo "Lixeira removida!" exit else if ($R == n || $R == N) then echo "Saindo..." exit else echo "[$R] Resposta inválida." exit endif endif breaksw # ou mandar tudo pro lixo... default: # Início do loop: foreach A ($argv) # Testes condicionais: if (! -e $A) then echo "-> Arquivo ou diretório não encontrado." continue else if (! -w $A) then echo "-> Sem permissão para remover." continue endif # Removendo: ls $A | xargs cp -R -f $A --target-directory=$LIXEIRA >& /dev/null ls $A | xargs rm -R -f $A >& /dev/null echo "Arquivo removido!" end breaksw endsw # Fim
Checando a bateria do seu notebook com Ubuntu instalado
Convertendo man pages em PDFs (Versão CShell)
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Como instalar o Telegram Desktop no Ubuntu 24.04
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves
Browser/Placa de vídeo trava Ubuntu 22.04 (1)
Salvar estado da VM no virt-manager [RESOLVIDO] (5)