Compactado e descompactador bem interessantee
Publicado por Rafael 29/08/2004
[ Hits: 7.226 ]
Esse é um compactador q eu acabei de criar, estou aprendendo shell e esse foi um otimo exercicio.
Ele usa funçoes e menu, com a opção de ver os arquivos esolhidos antes de compactar e de visualizar o log apos a compactação!
#!/bin/bash ################################################################## #Script Compactando e descompactando arquivos e diretorios! #Escrito por Rafael B. Gianesini #E-mail rafaelbgdf@hotmail.com #29-Agosto-2004 #Viva o GPL #Pode ser alterado! ################################################################## rm -f /tmp/com.txt>>/dev/null 2>>/dev/null touch /tmp/com.txt function escolher() { clear echo "Escreva o endereço aonde se entra os arquivos" read -p "Ex. (/home/usuario) " END if [ -d $END ] then echo " O CONTEUDO DO DIRETORIO EH:" echo ls $END echo while true do echo echo "Aperte ENTER para sair ou" echo "Escolha o(s) nome(s) do(s) arquivo(s) que deseja compactar: " read ARQ if [ $ARQ ] then if [ -d $END/$ARQ -o -e $END/$ARQ ] then echo $END/$ARQ >> /tmp/com.txt echo "Adicionado a lista com sucesso!!" sleep 2 clear ls $END else echo "Arquivo ou diretorio não encontrado!" fi else clear break fi done else echo "Diretorio não encontrado" sleep 2 clear fi } function comp() { clear echo "Escolha o nome do arquivo: " read NOME echo "Compactando ..." tar -zcvf $NOME.tar.gz -T /tmp/com.txt >>logD.txt 2>>logD.err echo "Compactado com sucesso!" echo "Logs criados com sucesso" sleep 2 } function desc() { clear echo "Escreva o endereço do arquivo a ser descompactado" echo "ex (/home/usuaio/nome.tar.gz)" read DES if [ -e $DES ] then echo "Descompactando" echo "Aguarde..." tar -zxvf $DES >> logD.txt 2>> logD.err echo "Arquivo descompactado com sucesso!!" sleep 2 else echo "Arquivo não encontrado" sleep 2 fi } function lis() { clear echo "Os arquivos escolhidos até agora foram" echo cat /tmp/com.txt echo echo "Aperte alguma tecla para voltar..." read nada clear } function logs() { echo "Escolha uma das opções abaixo" echo "1 - Log de erro" echo "2 - Log de sucesso" echo "3 - SAIR" read -p "Opcao: " op case "$op" in 1) cat ./logD.err | less;; 2) cat ./logD.txt |less;; 3) break;; esac } clear while true do clear echo -n " Opcao Acao ===== ==== 1 Ecolher os arquivos a serem compactados 2 Compactar os arquivos escolhidos 3 Ver a lista de arquivos compactados 4 Descompactar 5 Logs 6 Sair Ecolha uma das opções : " read op case "$op" in 1) escolher;; 2) comp;; 3) lis;; 4) desc;; 5) logs;; 6)clear exit 1;; esac done
Calculo de notas - Incrementar um array em shell dinamicamente
Agenda telefônica em Shell Script
Algoritmo para saber o maior e menor valor
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
firefox nao guarda meus logins nos sites (1)
Instalar debian testing (13) "por cima" do debian 12 (2)
Erro de segmentação «Segmentation fault (core dumped)» ao retornar obj... (1)