Script lixeira em Tcl
Publicado por Sandro Marcell 28/03/2007
[ Hits: 5.026 ]
Homepage: http://sanmarcell.wordpress.com
Este simples script em Tcl, remove arquivos e diretórios, mas em vez de apagá-los, ele os copia para um diretório que será criado em /tmp e que servirá como lixeira.
Sugestão: Coloque está linha em seu .bash_profile:
alias rm=nome_do_script
Assim toda vez que você chamar o comando rm, estará invocando este script.
#!/usr/bin/tcl ## Lixeira.tcl - 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 # +--------------------------------------------------------------+ # Este script remove arq(s). e dir(s)., sem pedido de confirmação. # O uso do metacaractere (*) é permitido. # +--------------------------------------------------------------+ # Checa se o usuário passou algum parâmetro para o script: if {$argc == 0} { puts stdout "\n>>> Uso: [file tail $argv0] arq.1 arq.2 ...\n" exit 0 } # Caso tenha passado, o script contínua! # Criando, caso não exista o diretório onde o(s) arq(s)./dir(s).\ removido(s), será(ão) posto(s): set LIXEIRA "/tmp/lixeira-$tcl_platform(user)" if {![file exists $LIXEIRA]} { file mkdir $LIXEIRA } # Setando as permissões para a lixeira: file attributes $LIXEIRA -permissions u+rwx,go-rwx # Início do laço "foreach", responsável pelo controle das execuções abaixo: foreach ARQUIVO $argv { # Checa se o(s) arq(s)./dir(s). existe(m): if {![file exists $ARQUIVO]} { puts stdout "\nArquivo ou diretório não encotrado!\n" exit 0 continue } # Checa se o usuário é o dono: if {![file owned $ARQUIVO]} { puts stdout "\nSem permissão para remover!\n" exit 0 continue } # Se o usuário desejar remover a lixeira!: if {$ARQUIVO == $LIXEIRA} { file delete -force $LIXEIRA puts stdout "\nLixeira removida!\n" continue } # Se as duas primeiras condições forem satisfeitas,\ então estes comandos serão executados: file copy -force $ARQUIVO $LIXEIRA ; file delete -force $ARQUIVO ; puts stdout "\nArquivo removido!\n" }
Crivo de Eratóstenes Simples em Tcl (sem Tk)
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Um modo leve de ouvir/ver áudio/vídeo da internet em máquinas pererecas
Resolver algumas mensagens de erro do SSH
Instalar módulo de segurança do Banco do Brasil Warsaw do tipo .run
Sem espaço na partição home (2)
O que você está ouvindo agora? [2] (190)
Procrastinação e autossabotagem são problemas muito comuns na sociedad... (5)