Coolrom_downloader - download de roms
Publicado por Victor Oliveira (última atualizaçăo em 17/06/2016)
[ Hits: 4.264 ]
Coolrom_downloader é um bash script que realiza download de roms do site http://coolrom.com diretamente do terminal, sem necessidade de nenhum navegador.
#!/bin/bash
##########################################################################################
# Declaração de variáveis e funções
##########################################################################################
BASE_URL()
{
echo "coolrom.com/roms/"$VG_URL"/"$LETRA""
}
INICIO()
{
# Imprime o cabeçalho do programa:
echo ''
echo ' ▄▄· ▄▄▌ ▄▄▄ • ▌ ▄ ·.'
echo '▐█ ▌▪▪ ▪ ██• ▀▄ █·▪ ·██ ▐███▪'
echo '██ ▄▄ ▄█▀▄ ▄█▀▄ ██▪ ▐▀▀▄ ▄█▀▄ ▐█ ▌▐▌▐█·'
echo '▐███▌▐█▌.▐▌▐█▌.▐▌▐█▌▐▌▐█•█▌▐█▌.▐▌██ ██▌▐█▌'
echo '·▀▀▀ ▀█▄▀▪ ▀█▄▀▪.▀▀▀ .▀ ▀ ▀█▄▀▪▀▀ █▪▀▀▀'
echo '·▄▄▄▄ ▄▄▌ ▐ ▄▌ ▐ ▄ ▄▄▌ ▄▄▄· ·▄▄▄▄ ▄▄▄ .▄▄▄'
echo '██▪ ██ ▪ ██· █▌▐█•█▌▐███• ▪ ▐█ ▀█ ██▪ ██ ▀▄.▀·▀▄ █·'
echo '▐█· ▐█▌ ▄█▀▄ ██▪▐█▐▐▌▐█▐▐▌██▪ ▄█▀▄ ▄█▀▀█ ▐█· ▐█▌▐▀▀▪▄▐▀▀▄'
echo '██. ██ ▐█▌.▐▌▐█▌██▐█▌██▐█▌▐█▌▐▌▐█▌.▐▌▐█ ▪▐▌██. ██ ▐█▄▄▌▐█•█▌'
echo '▀▀▀▀▀• ▀█▄▀▪ ▀▀▀▀ ▀▪▀▀ █▪.▀▀▀ ▀█▄▀▪ ▀ ▀ ▀▀▀▀▀• ▀▀▀ .▀ ▀'
echo 'Email: victor.oliveira@gmx.com'
# Mostra as plataformas disponíveis
echo ''
echo '*** Selecione uma plataforma abaixo: ***'
echo ''
echo ' 1) Atari 2600 13) Neo Geo Pocket'
echo ' 2) Atari 5200 14) Sega CD'
echo ' 3) Atari 7800 15) Sega Dreamcast'
echo ' 4) Atari Jaguar 16) Sega Game Gear'
echo ' 5) Atari Lynx 17) Sega Genesis'
echo ' 6) Commodore 64 18) Sega Master System'
echo ' 7) Capcom CPS1 19) Sega Model 2'
echo ' 8) Capcom CPS2 20) Sega Saturn'
echo ' 9) MAME Arcade 21) Sony Playstation'
echo '10) Namco System 22 22) Sony Playstation 2'
echo '11) Neo Geo 23) Sony PSP'
echo '12) Neo Geo CD Q) Sair'
echo ''
}
BUSCA_LETRA()
{
echo ''
echo "*** Sistema de busca - "$VG" ***"
echo ''
echo 'Digite a primeira letra da rom que deseja baixar (Pressione . para voltar):'
read -p '>>> ' LETRA
# Verifica se o usuário deseja voltar
if [ "$LETRA" = "." ]; then
exec bash "$0"
fi
}
LISTA_JOGOS()
{
#Converte a letra para maiuscula
LETRA=$(echo "$LETRA"| tr '[:lower:]' '[:upper:]')
echo ""
echo "Listando..."
echo ""
lynx -dump $(BASE_URL)| awk '/[0-9]\/'"$LETRA"'/{print $2}'| cat -n
}
BAIXA_ROM()
{
echo ""
echo "Digite o número correspondente à URL da rom desejada (Ou pressione . para recomeçar)."
read -p '>>> ' NROM
# Verifica se o usuário deseja voltar
if [ "$NROM" = "." ]; then
exec bash "$0"
fi
URL=`lynx -dump $(BASE_URL)| awk '/[0-9]\/'"$LETRA"'/{print $2}'| sed ''"$NROM"'!d'`
# Variáveis
ROM ()
{
curl -sA 'Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0' "$URL"|grep "tr_download_url"|cut -d \" -f2
}
FN ()
{
curl -sA 'Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0' "$URL"| grep "File Name"| sed -e 's/<[^>]*>//g'| cut -c14-
}
# Mostra algumas informações
echo ""
echo "Link para download:"
echo $(ROM)
echo ""
echo "Nome do arquivo:"
echo $(FN)
echo ""
echo "Iniciando download..."
# Inicia o donwload
wget -O "$(FN)" "$(ROM)" && \
echo ""
echo "*** Download Concluído! ***"
echo "Arquivo salvo na pasta: $PWD"
echo "Recomeçando..."
sleep 3
exec bash "$0"
}
##########################################################################################
# Inicio do script
##########################################################################################
INICIO
# Lê a plataforma
read -p '>>> ' PLAT
# Executa a ação baseado na plataforma
case $PLAT in
# Atari 2600
1)
VG="Atari 2600"
VG_URL="atari2600"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
2)
VG="Atari 5200"
VG_URL="atari5200"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
3)
VG="Atari 7800"
VG_URL="atari7800"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
4)
VG="Atari Jaguar"
VG_URL="atarijaguar"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
5)
VG="Atari Lynx"
VG_URL="atarilynx"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
6)
VG="Commodore 64"
VG_URL="c64"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
7)
VG="Capcom CPS1"
VG_URL="cps1"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
8)
VG="Capcom CPS2"
VG_URL="cps2"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
9)
VG="MAME Arcade"
VG_URL="mame"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
10)
VG="Namco System 22"
VG_URL="namcosystem22"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
11)
VG="Neo Geo"
VG_URL="neogeo"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
12)
VG="Neo Geo CD"
VG_URL="neogeocd"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
13)
VG="Neo Geo Pocket"
VG_URL="neogeopocket"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
14)
VG="Sega CD"
VG_URL="segacd"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
15)
VG="Sega Dreamcast"
VG_URL="dc"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
16)
VG="Sega Game Gear"
VG_URL="gamegear"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
17)
VG="Sega Genesis"
VG_URL="genesis"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
18)
VG="Sega Master System"
VG_URL="mastersystem"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
19)
VG="Sega Model 2"
VG_URL="model2"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
20)
VG="Sega Saturn"
VG_URL="saturn"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
21)
VG="Sony Playstation"
VG_URL="psx"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
22)
VG="Sony Playstation 2"
VG_URL="ps2"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
23)
VG="Sony PSP"
VG_URL="psp"
BUSCA_LETRA
LISTA_JOGOS
BAIXA_ROM
;;
q)
INICIO
;;
esac
Executando comandos de telnet via shell-script
Carrega o VNC em uma tela do X11 separada e com mouse para canhotos
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Ativando e usando "zoom" no ambiente Cinnamon
Vídeo Nostálgico de Instalaçăo do Conectiva Linux 9
Como realizar um ataque de força bruta para desobrir senhas?
Thinkpads săo bons mesmo ?! (1)
Estou tentando ser legalista, mas tá complicado! (8)
Queda no serviços da Cloudflare, alguns sites estăo fora do ar. (1)









