Apostila interativa de linux (incompleto)
Publicado por Edersom 09/11/2004
[ Hits: 11.593 ]
Este Script, eh apenas uma estrutura que montei a fim de montar uma apostila on-line de linux, mas como meus conhecimentos saum um pouco fraquinhos (podem observar isso no código fonte do script) Resolvi pedir ajuda :D
Bom, Se surgir alguma Dúvida, naum deixe de me consultar
valews galera!!!!!!
fuiiiiiiii
#!/bin/sh # # SCRIPT: # AUTOR: EDERSOM ANGELO DA SILVA (maxmaxine@gmail.com) # DATA: 07/11/2004 # REV: 1.1.B # PLATAFORMA: LINUX # # FINALIDADE: # Criar uma ferramenta eficaz de auxilio ao estudo do linux, # # reunindo o máximo possivel de documentação sobre vários assuntos # # # LISTA DE REVISAO: # # DATA: data_da_modificação # POR: Autor_da_modificação # MODIFICAÇÃO: Modificação realizada. # # LICENÇA: GLP # # # DECLARAÇÕES DO AUTOR: # Eu sou ainda um filhote de pinguim # # Não possuo muitos conhecimentos no mundo Linux # # Por isso, não ligue se ver alguma bobeira escrita # # Pois afinal eu ainda estou aprendendo (como voce) # # E foi pensando nisto, que criei este Script, para # # Poder aprender mais Sobre linux, e oferecer para quem # # Quiser, uma ferramenta de estudo interessante didaticamente falando # # set -n # Tire o comantário para verificar sua sintaxe, sem executar. # # Obs: Não se esqueça de recolocá-lo, caso contrário o script naum funcionará # set -x # Retire o comantário para Depurar este shell-script (Apenas korn shell (ksh)) # # ############################################# ### ABAIXO ESTAO DEFINIDAS AS VARIÁVEIS ### ############################################# DIALOG=${DIALOG=dialog} TITU='Estudo Interativo' BACK='Tux o Pinguim Selvagem' tempfile='/tmp/tmpfile' PROXIMA=primeira calc=${calc=/tmp/calc} ################################################ ### TENHO NEM IDEIA DE COMO CHAMAR O RESTO ### ################################################ while : # Gera o loop Principal do case "$PROXIMA" in # Executa as sequencias definidas na variável atual #------------------------------------------------------------------------------------------------------------------------------- #TELA INICIAL primeira) PROXIMA=menu_1 #define que a proxima tela a ser exibida será o menu Principal $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --msgbox \ "Bem-vindo Programa de auxilio ao estudo do Linux\n Este script almeja ser uma ferramenta completa para o auxilio ao estudo Inicial/Avançado do linux" \ 0 0 ;; #------------------------------------------------------------------------------------------------------------------------------- #Menu principal menu_1) $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --cancel-label "Sair" \ --menu \ "Menu Principal\n Escolha uma das opçoes abaixo" \ 10 40 3 \ 1 "Estudar" \ 2 "Responder Questionário" \ Ca "Calculadora Simples" 2>$tempfile valret=$? if [ "$valret" == 0 ] then PROXIMA=`cat $tempfile` # Define váriavel de acordo com a escolha else exit 0 fi ;; #------------------------------------------------------------------------------------------------------------------------------- ################################################################################################################################ ################################################################################################################################ # Menu 1-2 # Aqui é feita a escolha da categoria da matéria a ser estudada 1) $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --cancel-label 'VOLTAR' \ --menu \ 'Menu Estudar\nEscolha uma das opçoes abaixo' \ 0 0 0 \ Ln "Linux Básico" \ Rl "Redes linux" \ Sl "Servidores Linux" 2>$tempfile valret=$? if [ "$valret" == 0 ] then PROXIMA=`cat $tempfile` else PROXIMA='menu_1' fi ;; #------------------------------------------------------------------------------------------------------------------------------- Ln) PROXIMA=1 $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --yesno \ "Voce escolheu Linux Básico\ncontinuar?" \ 0 0 # valret=$? if [ "$?" == 0 ] then pwd >$tempfile $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --cancel-label 'VOLTAR' \ --menu \ 'Escolha uma das opçoes abaixo' \ 0 0 0 \ Hl "História do Linux" \ Db "O que é e como escolher uma distro" \ In "Instalação do Linux" \ Au "Administração de usuários" \ Sx "Servidor X" \ Os "O que é shell?" \ Ic "Introdução aos Comandos" \ Ta "Trabalhando com arquivos" \ Cg "Configurações gerais" \ Cs "Comandos úteis" 2>/tmp/resp1 if [ "$?" == 0 ] then tmp=`cat $tempfile` opcao=`cat /tmp/resp1` local=$tmp/Ln PROXIMA=RsP else PROXIMA=1 fi else PROXIMA=1 fi ;; #------------------------------------------------------------------------------------------------------------------------------- Rl) PROXIMA=1 $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --yesno \ "Voce escolheu Redes Linux\ncontinuar?" \ 0 0 # valret=$? if [ "$?" == 0 ] then pwd >$tempfile $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --cancel-label 'VOLTAR' \ --menu \ 'Escolha uma das opçoes abaixo' \ 0 0 0 \ Rc "Arquivos de configuração da rede" \ Rf "Front-Ends para configuração de rede" \ Rd "Dispositivos de Rede" \ Rp "Protocolos" \ Rt "TCP/IP" \ Ro "Topologia" \ Rc "Cabeamento" \ Rh "Hub" \ Rs "Switch" 2>/tmp/resp1 if [ "$?" != 1 ] then local=`cat $tempfile` opcao=`cat /tmp/resp1` local=$tmp/Rl PROXIMA=RsP else PROXIMA=1 fi else PROXIMA=1 fi ;; #------------------------------------------------------------------------------------------------------------------- Sl) PROXIMA=1 $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --yesno \ "Voce escolheu Servidores Linux\ncontinuar?" \ 0 0 # valret=$? if [ "$?" == 0 ] then pwd >$tempfile $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --cancel-label 'VOLTAR' \ --menu \ 'Escolha uma das opçoes abaixo' \ 0 0 0 \ Sr "Roteadores" \ Sa "Apache" \ Sq "Squid" \ Sm "Samba" \ Sf "Proftp" \ Se "Email (SMTP/POP)" \ Sh "DHCP" \ Sn "DNS" \ Sd "NIS" \ St "LTSP" \ Sa "NFS" 2>/tmp/resp1 if [ "$?" != 1 ] then local=`cat $tempfile` opcao=`cat /tmp/resp1` local=$tmp/Sl PROXIMA=RsP else PROXIMA=1 fi else PROXIMA=1 fi ;; RsP) $DIALOG \ --title "$TITU" \ --textbox $local/$opcao \ 0 0 rm -r /tmp/resp1 PROXIMA=1 ;; ################################################################################################################################ ################################################################################################################################ # Menu 2-2 # Aqui é feita a escolha da categoria da matéria a se responder o questionário 2) $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --cancel-label 'VOLTAR' \ --menu \ 'Menu Questionario\n Escolha uma das opçoes abaixo' \ 0 0 0 \ Lb "Linux Básico" \ Re "Redes linux" \ Ss "Servidores Linux" 2>$tempfile valret=$? if [ "$valret" == 0 ] then PROXIMA=`cat $tempfile` else PROXIMA='menu_1' fi ;; #------------------------------------------------------------------------------------------------------------------------------- ################################################################################################################################ Lb) PROXIMA=2 $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --yesno \ "Voce escolheu Linux Básico\nContinuar?" \ 0 0 \ if [ "$?" == 0 ] then #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #PERGUNTA 1 $DIALOG \ --title "$TITU" \ --nocancel \ --backtitle "$BACK" \ --radiolist \ "Pergunta 1" \ 0 0 0 \ R1 'Resposta 1' off \ R2 'Resposta 2' off \ R3 'Resposta 3' off \ R4 'Resposta 4' off \ R5 'Resposta 5' off 2>/tmp/P1 resp1=`cat /tmp/P1` if [ "$resp1" != R1 ] # VERIFICA SE A QUESTÃO ESTA CORRETA OU NÃO then #GRAVA AS VARIÁVEIS CASO RESPOSTA DIFERENDE DE R1 INC1='A RESPOSTA DA P1 EH...' COR1='VC ERROU!' else #GRAVA AS VARIÁVEIS CASO RESPOSTA IGUAL A R1 INC1='VC ACERTOU!' COR1='PERGUNTA 1' fi $DIALOG --title "$TITU" --backtitle "$BACK" --msgbox "$INC1\n$COR1" 8 60 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #PERGUNTA 2 $DIALOG \ --title "$TITU" \ --backtitle "$BACK" \ --nocancel \ --radiolist \ "Pergunta 2" \ 0 0 0 \ R1 'Resposta 1' off \ R2 'Resposta 2' off \ R3 'Resposta 3' off \ R4 'Resposta 4' off \ R5 'Resposta 5' off 2>/tmp/P2 resp2=`cat /tmp/P2` if [ "$resp2" != R1 ] # VERIFICA SE A QUESTÃO ESTA CORRETA OU NÃO then #GRAVA AS VARIÁVEIS CASO RESPOSTA DIFERENDE DE R1 INC2='A RESPOSTA DA P2 EH...' COR2='VC ERROU!' else #GRAVA AS VARIÁVEIS CASO RESPOSTA IGUAL A R1 INC2='VC ACERTOU!' COR2='PERGUNTA 2' fi $DIALOG --title "$TITU" --backtitle "$BACK" --msgbox "$INC2\n$COR2" 8 60 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ PROXIMA=resultado else PROXIMA=2 fi ;; #------------------------------------------------------------------------------------------------------------------------------- # Questionario de Redes Re) PROXIMA=2 $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --yesno \ "Voce escolheu Redes Linux\nContinuar?" \ 0 0 \ if [ "$?" == 0 ] then #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #PERGUNTA 1 $DIALOG \ --title "$TITU" \ --backtitle "$BACK" \ --nocancel \ --radiolist \ "Pergunta 1" \ 0 0 0 \ R1 'Resposta 1' off \ R2 'Resposta 2' off \ R3 'Resposta 3' off \ R4 'Resposta 4' off \ R5 'Resposta 5' off 2>/tmp/P1 resp1=`cat /tmp/P1` if [ "$resp1" != R1 ] # VERIFICA SE A QUESTÃO ESTA CORRETA OU NÃO then #GRAVA AS VARIÁVEIS CASO RESPOSTA DIFERENDE DE R1 INC1='A RESPOSTA DA P1 EH...' COR1='VC ERROU!' else #GRAVA AS VARIÁVEIS CASO RESPOSTA IGUAL A R1 INC1='VC ACERTOU!' COR1='PERGUNTA 1' fi $DIALOG --title "$TITU" --backtitle "$BACK" --msgbox "$INC1\n$COR1" 8 60 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #PERGUNTA 2 $DIALOG \ --title "$TITU" \ --backtitle "$BACK" \ --nocancel \ --radiolist \ "Pergunta 2" \ 0 0 0 \ R1 'Resposta 1' off \ R2 'Resposta 2' off \ R3 'Resposta 3' off \ R4 'Resposta 4' off \ R5 'Resposta 5' off 2>/tmp/P2 resp2=`cat /tmp/P2` if [ "$resp2" != R1 ] # VERIFICA SE A QUESTÃO ESTA CORRETA OU NÃO then #GRAVA AS VARIÁVEIS CASO RESPOSTA DIFERENDE DE R1 INC2='A RESPOSTA DA P2 EH...' COR2='VC ERROU!' else #GRAVA AS VARIÁVEIS CASO RESPOSTA IGUAL A R1 INC2='VC ACERTOU!' COR2='PERGUNTA 2' fi $DIALOG --title "$TITU" --backtitle "$BACK" --msgbox "$INC2\n$COR2" 8 60 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ PROXIMA=resultado else PROXIMA=2 fi ;; #------------------------------------------------------------------------------------------------------------------------------- # Questionário de Servidores Linux Ss) PROXIMA=2 $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --yesno \ "Voce escolheu Servidores Linux\nContinuar?" \ 0 0 \ if [ "$?" == 0 ] then #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #PERGUNTA 1 $DIALOG \ --title "$TITU" \ --backtitle "$BACK" \ --nocancel \ --radiolist \ "Pergunta 1" \ 0 0 0 \ R1 'Resposta 1' off \ R2 'Resposta 2' off \ R3 'Resposta 3' off \ R4 'Resposta 4' off \ R5 'Resposta 5' off 2>/tmp/P1 resp1=`cat /tmp/P1` if [ "$resp1" != R1 ] # VERIFICA SE A QUESTÃO ESTA CORRETA OU NÃO then #GRAVA AS VARIÁVEIS CASO RESPOSTA DIFERENDE DE R1 INC1='A RESPOSTA DA P1 EH...' COR1='VC ERROU!' else #GRAVA AS VARIÁVEIS CASO RESPOSTA IGUAL A R1 INC1='VC ACERTOU!' COR1='PERGUNTA 1' fi $DIALOG --title "$TITU" --backtitle "$BACK" --msgbox "$INC1\n$COR1" 8 60 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #PERGUNTA 2 $DIALOG \ --title "$TITU" \ --backtitle "$BACK" \ --nocancel \ --radiolist \ "Pergunta 2" \ 0 0 0 \ R1 'Resposta 1' off \ R2 'Resposta 2' off \ R3 'Resposta 3' off \ R4 'Resposta 4' off \ R5 'Resposta 5' off 2>/tmp/P2 resp2=`cat /tmp/P2` if [ "$resp2" != R1 ] # VERIFICA SE A QUESTÃO ESTA CORRETA OU NÃO then #GRAVA AS VARIÁVEIS CASO RESPOSTA DIFERENDE DE R1 INC2='A RESPOSTA DA P2 EH...' COR2='VC ERROU!' else #GRAVA AS VARIÁVEIS CASO RESPOSTA IGUAL A R1 INC2='VC ACERTOU!' COR2='PERGUNTA 2' fi $DIALOG --title "$TITU" --backtitle "$BACK" --msgbox "$INC2\n$COR2" 8 60 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ PROXIMA=resultado else PROXIMA=2 fi ;; #------------------------------------------------------------------------------------------------------------------------------- resultado) PROXIMA=2 $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --yesno \ "PRONTO PARA VER O RESULTADO DA CAGADA?" \ 0 0 valret=$? if [ "$valret" == 0 ] then $DIALOG \ --backtitle "$BACK" \ --title "$TITU" \ --msgbox \ "Corretas Incorretas \n $COR1 $INC1 \n $COR2 $INC2 \n $COR3 $INC3 \n $COR4 $INC4 \n $COR5 $INC5 \n" \ 0 0 else PROXIMA=2 fi ;; #------------------------------------------------------------------------------------------------------------------------------- ################################################################################################################################ ################################################################################################################################ #Calculadora Simples Ca) $DIALOG \ --title "Calculator" \ --ok-label "RESULTADO" \ --cancel-label "VOLTAR" \ --backtitle "$BACK" \ --inputbox \ "Calcula no formato 1+1" 8 25 2>$calc if [ "$?" != 1 ] then resu=`cat $calc` $DIALOG \ --title "Resultado" \ --backtitle "$BACK" \ --msgbox $((resu)) 0 0 else PROXIMA=menu_1 fi ;; esac #------------------------------------------------------------------------------------------------------------------------------- #rm -f /tmp/resp1 rm -f /tmp/resp2 rm -f /tmp/resp3 rm -f /tmp/resp4 rm -f /tmp/resp5 rm -f /tmp/resp6 rm -f /tmp/resp7 rm -f /tmp/resp8 #------------------------------------------------------------------------------------------------------------------------------- done #FIM
Configurando CISCO por Shell Script
Raiz Quadrada (Square Root) para Bash
Instalação da Multilib no Slackware
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (6)