Manutenção de Endereços
Publicado por Robson Soares Nunes Júnior 18/10/2005
[ Hits: 6.081 ]
Script criado para administração de uma lista de sites permitidos utilizada pelo SQUID na empresa onde trabalho. Simples, porém útil quando a idéia é tornar a rotina um pouco mais prática.
OBS: Crie uma lista de endereços chamada limitado para que tudo funcione corretamente.
#!/bin/sh
# FUNÇÃO PARA CADASTRAR
cadastro ( ) {
clear
echo "Entre com o endereco a ser adicionado: "; read site
if [ -z $site ]; then
clear
printf '\a'
echo "Por favor, digite um endereço."
read a
cadastro
else
echo "O site a ser incluído é: $site"
printf '\a'
echo "Confirma inclusão? "; read confirma
if [ $confirma = "s" ]; then
cat limitado | grep "."$site
case $? in
1) echo "."$site >> limitado ; echo "Site incluído!" ;;
0) printf '\a'; echo "Site já existe na lista!" ;;
esac
fi
if [ $confirma = "n" ]; then
printf '\a'
echo "Inclusão cancelada!"
fi
sleep 1
clear
fi
}
# FUNÇÃO EXCLUIR
excluir ( ) {
clear
cp limitado limitado.bkp
echo "Digite o site a ser excluído: "; read excluido
if [ -z $excluido ]; then
clear
printf '\a'
echo "Por favor, digite um endereço."
read a
excluir
else
echo "O(s) site(s) a ser(erem) excluído(s) é(são): "
for excl in `cat limitado | grep $excluido`
do
echo $excl
printf '\a'
echo "Confirma exclusão?"; read confirma2
case $confirma2 in
s) cat limitado | grep -v -w $excl > limitado ;;
n) printf '\a'; echo "Exclusão cancelada!" ; read a ;;
esac
done
fi
}
# FUNÇÃO LISTAR
listar ( ) {
clear
more limitado;
read a
}
# FUNÇÃO BUSCAR
buscar ( ) {
clear
echo "Digite o endereço a ser pesquisado: "; read ender
if [ -z $ender ]; then
clear
printf '\a'
echo "Por favor, digite um endereço."
read a
buscar
else
echo ""
echo "Resultados da busca: "
cat limitado | grep $ender
read a
fi
}
# REINICIANDO SQUID
reconfig ( ) {
clear
squid -k reconfigure
printf '\a'
echo "Reiniciando Squid";
sleep 1;
echo "Squid reiniciado!";
sleep 2;
clear
}
# RESTAURAR BACKUP
restaura ( ) {
clear
echo "Restaurando backup!"
cp limitado.bkp limitado
sleep 1
printf '\a'
echo "Backup restaurado!"
sleep 1
}
# FECHANDO SCRIPT
saida ( ) {
echo ""
echo ""
echo ""
echo ""
echo ""
echo ""
echo " ################################################################"
echo " # #"
echo " # SCRIPT DESENVOLVIDO POR ROBSON SOARES (SMUGGLE) #"
echo " # #"
echo " # Agradecimentos: Lucas Carvalho #"
echo " # #"
echo " ################################################################"
sleep 2
clear
exit
}
# MENU
while [ $opcao!=7 ]; do
clear
for usuario in `whoami`
do
if [ $usuario = "root" ]; then
echo "###################### ADMINISTRAÇÃO DE URLS AUTORIZADAS ######################"
echo ""
echo " 1 - Cadastrar"
echo " 2 - Excluir"
echo " 3 - Listar"
echo " 4 - Buscar"
echo " 5 - Reiniciar Squid"
echo " 6 - Restaurar backup"
echo " 7 - Sair"
read opcao;
case $opcao in
7) saida ;;
6) restaura ;;
5) reconfig ;;
4) buscar ;;
3) listar ;;
2) excluir ;;
1) cadastro ;;
*) echo " Opção inválida"; read a;;
esac
fi
if [ $usuario != "root" ]; then
printf '\a'
echo "Esse script deve ser executado como root!";
read a
exit
fi
done
done
Automatizando backups no Samba
feet.sh - pseudo screensaver em bash
Script pra instalar / atualizar o Postfix no Slackware
Configuração do Modem Sony Ericsson MD300 da Claro 3G no Linux
Configuração do horário de verão 2006/2007 (Red Hat, Fedora)
Nenhum comentário foi encontrado.
Cinnamon seria a aposta acertada frente às outras interfaces gráficas mais populares?
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)
Vou destruir sua infância:) (8)
Interface gráfica com problema (2)
Instalar Linux em notebook Sony Vaio VPCEG13EB (13)









