Script em Tcl para descompactar arquivos
Publicado por Sandro Marcell 29/03/2007
[ Hits: 5.779 ]
Homepage: http://sanmarcell.wordpress.com
Este simples script em Tcl, descompacta arquivos nos seguintes formatos:
## .gz, .bz2, .zip, .tar.gz e .tar.bz2 ##
É um script fácil de usar e de entender o seu funcionamento, pois ele está todo comentado.
#!/usr/bin/tcl ## Descom.tcl - descompactador de arquivos ## Escrito por: Sandro Marcell P. Barbosa (Boa Vista - Roraima) ## E-mail: sandro_marcell@yahoo.com.br ## Slackware GNU/Linux 10.1 # +---------------------------------------------------------------+ # As extensões suportadas são: .gz, .bz2, .zip, .tar.gz e .tar.bz2 # +---------------------------------------------------------------+ # Checa se o usuário passou algum parâmetro para o script: if {$argc == 0} { puts stdout "\a >>> Uso: [file tail $argv0] /caminho/arquivo.extensão\n >>> Exemplo: [file tail $argv0] /home/user/arquivo.gz\n" exit 0 } # Caso tenha passado, o script contínua! # A condição 'if' teste se o parâmetro passado (o arquivo)\ realmente existe; if {![file exists $argv]} { puts stdout "\n\a:( Arquivo não encontrado!\n" exit 0 } # Se existir, executa o laço "switch". # Este procedimento será utilizado no laço "switch". proc Sucesso {} { puts stdout "\n:) Descompactação finalizada com sucesso!\n" } # Início do laço "switch", que determinará o comando a ser executado: switch -glob $argv { *.tar.gz { if {[catch {exec tar -xzf $argv 2> /dev/stdout}] == 0} { Sucesso } else { puts stdout "\a" exit 1 } } *.gz { if {[catch {exec gunzip $argv 2> /dev/stdout}] == 0} { Sucesso } else { puts stdout "\a" exit 1 } } *.tar.bz2 { if {[catch {exec tar -xjf $argv 2> /dev/stdout}] == 0} { Sucesso } else { puts stdout "\a" exit 1 } } *.bz2 { if {[catch {exec bunzip2 $argv 2> /dev/stdout}] == 0} { Sucesso } else { puts stdout "\a" exit 1 } } *.zip { if {[catch {exec unzip $argv 2> /dev/stdout}] == 0} { Sucesso } else { puts stdout "\a" exit 1 } } default { puts stdout "\n\a:( Arquivo com extensão não suportada!\n" } }
Calculadora com funções básicas
Renomeando arquivos de forma padronizada
Nenhum comentário foi encontrado.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (0)
Baixar jogos Independentes para Ubuntu [RESOLVIDO] (4)
PIP3 - erro ao instalar módulo do mariadb para o Python (1)
Linux x Plataformas de Trading - um problema (in-)solúvel? (4)