Compactado e descompactador bem interessantee
Publicado por Rafael 29/08/2004
[ Hits: 7.373 ]
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
Adicionar sites para serem bloqueados pelo squid
Converter todas as imagens de um diretório v2.0
executando um determinado comando em um horario escolhido
Montando Pen Drive no Slackware
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
Como instalar o repositório do DBeaver no Ubuntu
Como instalar o Plex Media Server no Ubuntu
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
O programa assinador digital (1)
PIP3 - erro ao instalar módulo do mariadb para o Python (9)
É normal não gostar de KDE? (8)
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)









