Comandos e estruturas básicas de shell script
Publicado por Perfil removido (última atualização em 30/11/2009)
[ Hits: 8.801 ]
Segue um script básico criado por mim para apresentar à turma de sistemas operacionais abertos, do professor Robson Vaz, que contém exemplos básicos de FUNÇÃO, IF, CASE etc.
Dá uma ideia legal de como usar tais ferramentas na construção de um script mais elaborado.
Como disse, é um script simples onde desmonta cdrom, abre bandeja, fecha.
Espero que ajude aos amigos que estão começando nesse mundo de script. E que os comandos sirvam de consulta aqui no VOL e outros sites relacionados a Linux e scripts.
Abs a todos!
#!/bin/bash #Função GUI GUI(){ while : ; do # Mostra o menu na tela, com as ações disponíveis opcao=$( dialog --stdout \ --title 'Desmontando Cdrom' \ --menu 'escolha a opção que deseja executar e precione Enter:' \ 0 0 0 \ 1 'Desmontar CdRom' \ 2 'Abrir bandeja Cdrom' \ 3 'Fechar bandeja Cdrom' \ 4 'Sair do Script' ) # Caso seja apertado Cancelar ou ESC... [ $? -ne 0 ] && main # Executa o que foi escolhido case "$opcao" in 1) umount /dev/cdrom ;; 2) eject ;; 3) eject -t ;; 4) break;; esac done # Mensagem de saida echo 'Volte Sempre!' echo "http://www.vivaolinux.com.br/~clemiltonoliver" echo " " sleep 2 main } #Fim da Função GUI #---------------------------------------------------------------------------------------- #Função que verifica se Cdrom esta desmontado ver_cd (){ if ! fgrep -q "/media/cdrom" /etc/mtab; then echo Cdrom não esta montado else echo "Desmontando CDROM..." echo Aguarde... for ((i=0;i!=5;i++)); do sleep 1 echo -ne "##########" done umount /dev/cdrom fi } #Fim da Função que verifica Cdrom montado #---------------------------------------------------------------------------------------- #Função MAIN main(){ clear echo " " echo '*******************************************************************************' echo '* ..............................::Creditos::................................. *' echo '* Scritp criado pelo Aluno: Clemilton Oliveira - Matricula 5403442 *' echo '* Apresentado à disciplina de Sistemas Operacionais Abertos do Curso Tec. em *' echo '* Analise de Sistemas - Faculdade Unigranrio *' echo '* Professor: Robson Vaz *' echo '*******************************************************************************' echo " " echo "Digite a opção que deseja executar:" echo " " echo "1) Desmontar Cdrom" echo "2) Abrir bandeja Cdrom" echo "3) Fechar bandeja Cdrom" echo "4) Interface Grafica (Dialog)" echo "5) Sair do Script" #Variavel de entrada de dados - Recebe o que foi digitado no prompt read opcao #Opção 1 if [ "$opcao" = "1" ]; then ver_cd echo " " sleep 3 main fi #Opção 2 if [ "$opcao" = "2" ]; then echo Abrindo bandeja... echo Aguarde... for ((i=0;i!=5;i++)); do sleep 1 echo -ne "##########" done eject echo " " echo " " echo "Bandeja Aberta!" sleep 3 main fi #Opção 3 if [ "$opcao" = "3" ]; then echo Fechando bandeja... echo Aguarde... for ((i=0;i!=5;i++)); do sleep 1 echo -ne "##########" done eject -t echo " " echo " " echo "Bandeja Fechada!" sleep 3 main fi #Opção 4 if [ "$opcao" = "4" ]; then GUI fi #Opção 5 if [ "$opcao" = "5" ]; then clear echo " " echo "Volte Sempre!!!" echo "http://www.vivaolinux.com.br/~clemiltonoliver" echo " " exit 1 fi } #Fim da função "MAIN" #Chamada da Função principal MAIN main
Instalador de programas essenciais para seu desktop Ubuntu 12.04
Melhorando a performance do sistema...
Script automatizado de Atualização e Instalação de Programas no Ubuntu
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Como instalar o Google Cloud CLI no Ubuntu/Debian
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)