Compactado e descompactador bem interessantee
Publicado por Rafael 29/08/2004
[ Hits: 7.484 ]
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
NMAP - Script que monitora portas que foram abertas e envia por email
zsh: Gerando uma sequência de números pseudo-aleatórios sem repetição
rc.squid start|stop|restart Servidor Proxy
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)
Vou destruir sua infância:) (7)
Interface gráfica com problema (0)









