Script lixeira em Tcl
Publicado por Sandro Marcell 28/03/2007
[ Hits: 5.228 ]
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"
}
Calculadora com funções básicas
A Fundação da Confiança Digital: A Importância Estratégica de uma PKI CA na Segurança de Dados
Como enviar dicas ou artigos para o Viva o Linux
Como Ativar a Aceleração por GPU (ROCm) no Ollama para AMD Navi 10 (RX 5700 XT / 5600) no Gentoo
Samba 4 AD-DC 2026: LAPS (Randomizando senhas locais).
Cairo Dock ainda funcional nos dias de hoje
Configuração de IP fixo via nmcli e resolução de nomes via /etc/hosts no Gentoo
Removendo o bloqueio por erros de senha no Gentoo (systemd)
Papel de Parede Animado no KDE Plasma 6 (Com dicas para Gentoo)









