Show do Milhão do linux
Publicado por Slackjeff (última atualização em 26/01/2018)
[ Hits: 4.854 ]
Homepage: https://slackjeff.com.br
Jogo CRIADO em 2007 por mim, então a lógica tá meio pufff "ruim", então não questione.
Programa feito em Dialog, então é importante ter em sua distribuição para o funcionamento.
É IMPORTANTE você ter os audios para ficar o jogo melhor.
Baixe os arquivos [ inicio.ogg, participante.ogg, milhao.ogg ]
https://notabug.org/jeffersonrocha/Show-do-milhao
E jogue na mesma pasta onde está o script "show-do-milhao".
#!/bin/bash
#-------------HEADER-----------------------------------------------------------|
#AUTOR:
# Jefferson Rocha <lrcjefferson@gmail.com>
#
#PROGRAMA:
# Show do Milhão do Linux
#------------------------------------------------------------------------------|
# (Váriaveis locais)
programa="Show do milhão, versão 1.0"
total=0 # Zerando var
# (Funções)
sound() {
ogg123 milhao.ogg 2>&- & sleep 1.7s
}
variavel_nula() {
dialog --stdout --title "Aviso!" --backtitle "$programa" \
--infobox "Se não escolher nada você vai ganhar um milhão em outro lugar, $nome!" 5 40 ; sleep 4
}
# (Inicio do programa)
dialog --stdout --title "Bem vindo!" --backtitle "$programa" \
--extra-button --extra-label "Sou nutella, é muito pra mim." \
--ok-label "Ok, MR Slackjeff" \
--msgbox "
Não vale colar, pesquisar ou nenhuma coisa desse tipo que seja coisa de usuário
Nutella!
Essa é a minha roleta russa, ou você sabe ou você chora.
São 10 perguntas do misturadas, cada pergunta certa é que vale
a 1 ponto, se você tirar uma pontuação >= a 8 você está indo bem.
Tirou abaixo disso, volte a estudar porque você não é CAVEIRA caral**
Você é apenas uma muleque que fica passeando pelo X enquanto seus colegas estão,
aprendendo e virando o S.O de cabeça pra baixo!.
" 0 0
if [[ $? -eq 3 ]]; then
echo "Nutella, puff."
exit
fi
ogg123 participante.ogg 2>&-
while true ;do
nome=$(
dialog --stdout --title "Seu nome" --backtitle "$programa" \
--inputbox "
Antes de prosseguir preciso saber o seu nome! pra que?
Bom é pra roubar seu cartão de crédito.
Bota loga o nome ai" 0 0
)
if [ ! -z $nome ]; then
break
else # É nulo? loop nele!
dialog --stdout --title "Aviso!" --backtitle "$programa" \
--infobox "
Enquanto não por seu nome eu não vou prosseguir.
Eu sou difícil e você sabe!" 0 0; sleep 4
fi
done
ogg123 inicio.ogg 2>&-
pergunta1=$(
sound
dialog --stdout --title "Pergunta 1" --backtitle "$programa" \
--checklist "Qual comando é utilizado para remover arquivos e pastas?" \
0 0 0 \
rm "" off \
mkdir "" off \
"ls -l" "" off \
cp "" off \
ls "" off \
"rm -r" "" off \
chmod "" off )
if [ "$pergunta1" = 'rm "rm -r"' ]; then
let total++
elif [ -z $pergunta1 ]; then
variavel_nula
fi
# Pergunta 2
sound
dialog --stdout --title "Pergunta 2" --backtitle "$programa" \
--yes-label "Verdadeiro" --no-label "Falso" \
--yesno "
.Bashrc que está presente em sua pasta 'Home' serve para fazer configurações,
de todos usuários após o login.
Verdadeiro ou Falso?" 0 0
if [ $? -eq 1 ]; then
let total++
fi
pergunta3=$(
sound
dialog --stdout --title "Pergunta 3" --backtitle "$programa" \
--radiolist "
Selecione uma das alternativas!
Sabemos que o comando diff é muito importante para os programadores.
Quando a questão é controle! O que ele compara?" \
0 0 0 \
1 "Compara a versão do bash" off \
2 "Compara as versões do programa no github" off \
3 "Faz a comparação de arquivos/programas para lançamento de patchs" off \
4 "Compara as versões do programa e usa o sftp para se conectar" off )
if [ $pergunta3 -eq 3 ]; then
let total++
elif [ -z $pergunta ]; then
variavel_nula
fi
# Pergunta 4
sound
dialog --stdout --title "Pergunta 4" --backtitle "$programa" \
--yes-label "Verdadeiro" --no-label "Falso" \
--yesno "
Sabemos que o Kernel Linux é uma distribuição difundida no mundo e
seu criador Richard Stallman fez uma cópia discarada do UNIX.
Essa afirmação é verdadeira ou falsa?" 0 0
if [ $? -eq 1 ]; then
let total++
fi
pergunta5=$(
sound
dialog --stdout --title "Pergunta 5" --backtitle "$programa" \
--inputbox "Qual nome do Criador do Kernel Linux?" 0 0
)
pergunta5=${pergunta5,,}
if [ "$pergunta5" = "linus torvalds" ]; then
let total++
fi
pergunta6=$(
sound
dialog --stdout --title "Pergunta 6" --backtitle "$programa" \
--radiolist "
Qual foi a sêquencia de criação destes projetos!?" \
0 0 0 \
1 "GNU/Linux, Minix, UNIX" off \
2 "Fernandinho beira mar, Pedro meu vizinho, UNIX" off \
3 "UNIXX, Minix, GNU/Linux" off \
4 "Carla perez, UNIX, Ivete sangalo, Luan santana" off \
5 "UNIX, Minix, GNU/Linux" off \
6 "Minix, UNIX, GNU/Linux" off \
7 "UNIX, Windows, MAC, Kurumin" off \
8 "Windows, UNIX, GNU/Linux, MAC" off )
if [ $pergunta6 -eq 5 ]; then
let total++
elif [ -z $pergunta6 ]; then
variavel_nula
fi
pergunta7=$(
sound
dialog --stdout --title "Pergunta 7" --backtitle "$programa" \
--radiolist "
Sabemos que um Vetor ou Array consegue armazenar várias 'strings ou números' no mesmo local.
Diferentemente de uma simples váriavel, que consegue armazer somente uma 'string ou número'
Veja o exemplo:
array1=(pipoca massinha pera 'pão com ovo')
Preciso fazer uma chamada de todas strings em seguida, preciso chamar o 'pão com ovo' somente.
Faça sua escolha:" \
0 0 0 \
1 'array1${{all}} , array1${{3}}' off \
2 "array1(1,2,3) , array1(2)" off \
3 '${array[@]} , ${array[3]}' off )
if [ $pergunta7 -eq 3 ]; then
let total++
elif [ -z $pergunta7 ]; then
variavel_nula
fi
pergunta8=$(
sound
dialog --stdout --title "Pergunta 8" --backtitle "$programa" \
--radiolist "
O que o teste está testando e esse código irá funcionar?
equal=;[ -z $equal ]&& exit 1 || continue" \
0 0 0 \
1 "equal é nula, sim irá funcionar" off \
2 "equal é igual, sim irá funcionar" off \
3 "equal é igual ou maior, não irá funcionar" off \
4 "equal é não nula, sim irá funcionar" off )
if [ $pergunta8 -eq 1 ]; then
let total++
elif [ -z $pergunta8 ]; then
variavel_nula
fi
# Pergunta 9
sound
dialog --stdout --title "Pergunta 9" --backtitle "$programa" \
--yes-label "Verdadeiro" --no-label "Falso" \
--yesno "
O dpkg é uma ferramenta de baixo nível, serve para manutenção de pacotes na distribuição debian.
Ele teve seu primeiro código escrito em perl posteriormente teve uma grande parte,
reescrito em C.
Essa afirmação é verdadeira ou falsa?" 0 0
if [ $? -eq 0 ]; then
let total++
fi
pergunta10=$(
sound
dialog --stdout --title "Pergunta 10" --backtitle "$programa" \
--checklist "
O comando touch como sabemos serve para criar arquivos. (sabemos que isso não presta).
Selecione 'DUAS' formas práticas de verificar se o arquivo existe e criar.
" \
0 0 0 \
1 "[ ! -e arquivo ]&& touch arquivo" off \
2 "> arquivo" off \
3 "echo 'texto' > arquivo" off \
3 "[ ! -e arquivo ]&& > arquivo && echo 'texto legal' > arquivo" off )
if [ $pergunta10 -eq 2 ]; then
let total++
fi
if [ $total -ge 8 ]; then
final=$(echo "$nome-finalizado.$RANDOM.key")
dialog --stdout --title "FINALIZADO" --backtitle "$programa" \
--ok-label "Curta meus vídeos!" \
--msgbox "
PÁRABENS $nome!!!!! seu total foi de $total pontos!
Fico feliz que você manja e provávelmente estuda.
criei uma chave para você, poste no meu canal do youtube está chave.
Com está chave eu sei que você conseguiu!
$final" 0 0
else
dialog --stdout --title "FINALIZADO" --backtitle "$programa" \
--msgbox "
$nome, isso é vergonhoso! sua pontuação foi de $total.
Se você tem menos de 1 ano de linux eu te dou um desconto!" 0 0
fi
Balanceamento de Carga e Alta Disponibilidade usando IPTABLES
Instalador automático nVIDIA para Debian
Eu vejo gente morta. Descubra se alguém já morreu!
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
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
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
Assinador JNLP do Site Portal da Nota Fiscal Eletrônica (2)
O programa assinador digital (3)
Warcraft II Remastered no Linux? (2)









