Encadeado
Publicado por Perfil removido 14/01/2005
[ Hits: 8.696 ]
Exemplo de utilização do dialog para encadeamentos lógicos...
O script está todo comentado...
Feito!
#!/bin/sh
# encadeado.sh - o script que chega até o final
#
# Exemplo de como encadear telas usando o operador && (AND).
# Caso o usuário desista em qualquer tela (apertando CANCELAR
# ou ESC), o script executa o primeiro comando após a cadeia
# de &&.
#
# Útil para fazer programas ou brincadeiras onde só há um
# caminho certo a seguir para chegar ao final.
#
# FLUXOGRAMA
# INÍCIO
# +-------+
# | tela1 |--Cancel/Esc--->---+
# +--Ok---+ |
# | tela2 |--Cancel/Esc--->---+ +----------+
# +--Ok---+ |---> | desistiu |
# | tela3 |--Cancel/Esc--->---+ +----------+
# +--Ok---+ |
# | tela4 |--Cancel/Esc--->---+
# +--Ok---+
# | final |
# +-------+
# FIM
#
# Função rápida para chamar a caixa YesNo
simnao(){
dialog --yesno "$*" 0 0
}
# Aqui começa o encadeamento de telas com o &&.
# Somente apertando o botão OK vai para a próxima tela.
# Há um 'exit' no final, que sai do script caso o usuário
# tenha chegado até o fim da cadeia.
simnao 'Quer continuar?' &&
simnao 'Estamos na segunda tela. Continua?' &&
simnao 'Terceira. Continua continuando?' &&
simnao 'Penúltima tela! E agora, continua?' &&
echo 'Você chegou até o final!' && exit
# Este trecho já não faz mais parte do encadeamento, e só
# será alcançado caso o usuário tenha apertado CANCELAR/Esc.
echo Você desistiu antes de chegar no final...
Administração de usuários Linux
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
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo 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
O programa assinador digital (1)
PIP3 - erro ao instalar módulo do mariadb para o Python (9)
É normal não gostar de KDE? (8)
dpkg: erro: gatilho de arquivo duplicado chamado pelo arquivo de nome (6)









