Compactado e descompactador bem interessantee
Publicado por Rafael 29/08/2004
[ Hits: 7.446 ]
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
Excluir Arq. Velhos de um Diretório ATUALIZADO!
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Como automatizar sua instalação do Ubuntu para desenvolvimento de software.
Não consigo instalar distro antiga no virtualbox nem direto no hd (12)
Quais os códigos mais dificeis que vcs sabem fazer? (12)
systemd-resol... precisa ser reiniciado periodicamente [RESOLVIDO] (7)









