Menu tarefas com SSH

Publicado por Francisco Stringuetta (última atualização em 28/06/2011)

[ Hits: 7.318 ]

Homepage: http://www.google.com.br

Download menu-ti.sh




Este script foi criado para facilitar a conexão com os PDV (Ponto de Venda) e Servidores aqui no Supermercado onde trabalho, o sistema de venda dos PDV roda em cima da base Slackware Linux 10, e algumas das tarefas, para correção e configuração dos mesmos, é necessário a conexão via ssh.
Caso tiverem alguma sugestão estou a aberto a opiniões, já que estou tentando me aprofundar em programação Shell Script.

Ah um detalhe, neste caso especifico utilizei o gnome-terminal para realizar as conexões.

Valeu...

Open Your Minds!

  



Esconder código-fonte

#!/bin/bash
# Menu para facilitação tarefas diarias
# By: \\ Francisco Stringuetta \\
# Email: <stringuetta@gmail.com>


RED=`echo -en "\{FONTE}33[1;31m"`
YELLOW=`echo -en "\{FONTE}33[1;33m"`
GREEN=`echo -en "\{FONTE}33[1;32m"`
BLUE=`echo -en "\{FONTE}33[1;34m"`
PURPLE=`echo -en "\{FONTE}33[1;35m"`
WHITE=`echo -en "\{FONTE}33[1;37m"`
NORM=`echo -en "\{FONTE}33[0;39m"`

clear

Principal () {
   echo "${GREEN}         +--------------------------------------------------+${NORM}"
   echo "${GREEN}         |${NORM}      ${RED}       Departamento de Informática          ${GREEN}|${NORM}"
   echo "${GREEN}         +--------------------------------------------------+${NORM}"
   echo "${GREEN}         |${NORM}               ${BLUE}Menu de Tarefas Diárias            ${GREEN}|${NORM}"
   echo "${GREEN}         +--------------------------------------------------+${NORM}"
   echo 
   echo  " ${PURPLE}Escolha a opção: ${NORM}"
   echo 
   echo " ${GREEN}1${NORM} - ${WHITE}Acessar servidor de Internet${NORM} "
   echo " ${GREEN}2${NORM} - ${WHITE}Acessar servidor de Dominio${NORM} "
   echo " ${GREEN}3${NORM} - ${WHITE}Acessar servidor KW Linux L1${NORM} "
   echo " ${GREEN}4${NORM} - ${WHITE}Acessar servidor KW Linux L2${NORM} "
   echo " ${GREEN}5${NORM} - ${WHITE}Acessar servidor KW Linux L3${NORM} "
   echo " ${GREEN}6${NORM} - ${WHITE}Menu de acesso aos PDVs L1${NORM} "
   echo " ${GREEN}7${NORM} - ${WHITE}Menu de acesso aos PDVs L2${NORM} "
   echo " ${GREEN}8${NORM} - ${WHITE}Menu de acesso aos PDVs L3${NORM} "
   echo " ${GREEN}9${NORM} - ${RED}Sair${NORM}"
   echo
   echo -n " ${YELLOW}Digita a opção desejada -> ${NORM}"
   read OPCAO
   case $OPCAO in  
      1) Internet ;; 
      2) Dominio ;;
      3) KW1 ;;
      4) KW2 ;;
      5) KW3 ;;
      6) Menu1 ;;
      7) Menu2 ;;
      8) Menu3 ;;
      9) exit ;;
      *) clear ; Principal ;;
   esac
}

Internet () {
   echo "Conectando ao servidor de internet..."
   gnome-terminal --command '/usr/bin/ssh stringuetta@xxx.xxx.x.x -p 00000'
   clear
   Principal
}

Dominio () {
   echo "Conectando ao servidor de domínio..."
   gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
   echo -n "Pressione qualquer tecla para continuar..."
   read MSG
   clear
   Principal
}

KW1 () {
   echo "Conectando ao servidor KW Linux L1..."
   gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
   clear
   Principal
}

KW2 () {
   echo "Conectando ao servidor KW Linux L2..."
   gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.xxx'
   clear
   Principal
}

KW3 () {
   echo "Conectando ao servidor KW Linux L3..."
   gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
   clear
   Principal
}

Menu1 () {
   clear
   echo " ${PURPLE}Escolha o PDV a ser conectado: ${NORM}"
   echo
   echo " ${GREEN}1${NORM} - ${WHITE}PDV 1 - Loja 1${NORM} "
   echo " ${GREEN}2${NORM} - ${WHITE}PDV 2 - Loja 1${NORM} "
   echo " ${GREEN}3${NORM} - ${WHITE}PDV 3 - Loja 1${NORM} "
   echo " ${GREEN}4${NORM} - ${WHITE}PDV 4 - Loja 1${NORM} "
   echo " ${GREEN}5${NORM} - ${WHITE}PDV 5 - Loja 1${NORM} "
   echo " ${GREEN}6${NORM} - ${WHITE}PDV 6 - Loja 1${NORM} "
   echo " ${GREEN}7${NORM} - ${WHITE}PDV 7 - Loja 1${NORM} "
   echo " ${GREEN}8${NORM} - ${WHITE}PDV 8 - Loja 1${NORM} "
   echo " ${GREEN}9${NORM} - ${WHITE}PDV 9 - Loja 1${NORM} "
   echo " ${GREEN}10${NORM} - ${WHITE}PDV 10 - Loja 1${NORM} "
   echo " ${GREEN}11${NORM} - ${WHITE}PDV 11 - Loja 1${NORM} "
   echo " ${GREEN}12${NORM} - ${WHITE}PDV 12 - Loja 1${NORM} "
   echo " ${GREEN}13${NORM} - ${WHITE}PDV 13 - Loja 1${NORM} "
   echo " ${GREEN}14${NORM} - ${RED}Menu Anterior${NORM} "
   echo 
   echo -n " ${YELLOW}Digite o número da opção desejada -> ${NORM}"
   read OPCAO1
   case $OPCAO1 in
      1) PDV1L1 ;;
      2) PDV2L1 ;;
      3) PDV3L1 ;;
      4) PDV4L1 ;;
      5) PDV5L1 ;;
      6) PDV6L1 ;;
      7) PDV7L1 ;;
      8) PDV8L1 ;;
      9) PDV9L1 ;;
      10) PDV10L1 ;;
      11) PDV11L1 ;;
      12) PDV12L1 ;;
      13) PDV13L1 ;;
      14) clear ; Principal ;;
      *) Opção Invalida ; echo ; Menu1 ;;
   esac
}   
      PDV1L1 () {
         echo -n " Conectando ao PDV1 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
   
      PDV2L1 () {
         echo -n " Conectando ao PDV2 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
      
      PDV3L1 () {
         echo -n " Conectando ao PDV3 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
         
      PDV4L1 () {
         echo -n " Conectando ao PDV4 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }   
      
      PDV5L1 () {
         echo -n " Conectando ao PDV5 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
      
      PDV6L1 () {
         echo -n " Conectando ao PDV6 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
      
      PDV7L1 () {
         echo -n " Conectando ao PDV7 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
      
      PDV8L1 () {
         echo -n " Conectando ao PDV8 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
            
      PDV9L1 () {
         echo -n " Conectando ao PDV9 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }   
      
      PDV10L1 () {
         echo -n " Conectando ao PDV10 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
      
      PDV11L1 () {
         echo -n " Conectando ao PDV11 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
      
      PDV12L1 () {
         echo -n " Conectando ao PDV12 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
      
      PDV13L1 () {
         echo -n " Conectando ao PDV13 L1..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         clear
         Menu1
      }
      
Menu2 () {
   clear
   echo " ${PURPLE}Escolha o PDV a ser conectado: ${NORM}"
   echo
   echo " ${GREEN}1${NORM} - ${WHITE}PDV 1 - Loja 2${NORM} "
   echo " ${GREEN}2${NORM} - ${WHITE}PDV 2 - Loja 2${NORM} "
   echo " ${GREEN}3${NORM} - ${WHITE}PDV 3 - Loja 2${NORM} "
   echo " ${GREEN}4${NORM} - ${WHITE}PDV 4 - Loja 2${NORM} "
   echo " ${GREEN}5${NORM} - ${RED}Menu Anterior${NORM} "
   echo 
   echo -n " ${YELLOW}Digite o número da opção desejada -> ${NORM}"
   read OPCAO2
   case $OPCAO2 in
      1) PDV1L2 ;;
      2) PDV2L2 ;;
      3) PDV3L2 ;;
      4) PDV4L2 ;;
      5) clear ; Principal ;;
      *) Opção Invalida ; echo ; Menu2 ;;
   esac
}   
      PDV1L2 () {
         echo -n " Conectando ao PDV1 L2..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'         
         Menu2
      }
   
      PDV2L2 () {
         echo -n " Conectando ao PDV2 L2..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         Menu2
      }         
   
      PDV3L2 () {
         echo -n " Conectando ao PDV2 L3..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         Menu2
      }         
   
      PDV4L2 () {
         echo -n " Conectando ao PDV2 L2..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         Menu2
      }         
   
Menu3 () {
   clear
   echo " ${PURPLE}Escolha o PDV a ser conectado: ${NORM} "
   echo
   echo " ${GREEN}1${NORM} - ${WHITE}PDV 1 - Loja 3${NORM} "
   echo " ${GREEN}2${NORM} - ${WHITE}PDV 2 - Loja 3${NORM} "
   echo " ${GREEN}3${NORM} - ${WHITE}PDV 3 - Loja 3${NORM} "
   echo " ${GREEN}4${NORM} - ${WHITE}PDV 4 - Loja 3${NORM} "
   echo " ${GREEN}5${NORM} - ${RED}Menu Anterior${NORM} "
   echo 
   echo -n " ${YELLOW}Digite o número da opção desejada -> ${NORM}"
   read OPCAO3
   case $OPCAO3 in
      1) PDV1L3 ;;
      2) PDV2L3 ;;
      3) PDV3L3 ;;
      4) PDV4L3 ;;
      5) clear ; Principal ;;
      *) Opção Invalida ; echo ; Menu3 ;;
   esac
}   
      PDV1L3 () {
         echo -n " Conectando ao PDV1 L3..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         Menu3
      }
   
      PDV2L3 () {
         echo -n " Conectando ao PDV2 L3..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         Menu3
      }         

      PDV3L3 () {
         echo -n " Conectando ao PDV2 L2..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         Menu2
      }         
   
      PDV4L4 () {
         echo -n " Conectando ao PDV2 L2..."
         gnome-terminal --command '/usr/bin/ssh root@xxx.xxx.x.x'
         Menu2
      }         
   
   Principal

Scripts recomendados

Script com Case para e Excluir pastas

Listar regras IPTABLES

Limpando o cache da memória RAM de forma efetiva

Atualizando o linux pelo apt-get

Removendo o ambiente Mate Desktop completamente


  

Comentários
[1] Comentário enviado por caio em 30/06/2011 - 01:10h

Otimo script... nao trabalho com pdvs mais vou dar umas adaptadas.. parabens.


Contribuir com comentário