ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – FACULDADE SENAC DE PELOTAS Shell Script Nome: Fábio Lopes Disciplina: Introdução à informática Turma: 1º semestre Manhã Professor: André Moraes Lopes INTRODUÇÃO Shell pode ser definido como o interpretador de instruções e comandos.Quando o usuário ou sistema executa qualquer comando, o Shell é responsável pela correta interpretação deste. 2 Lopes SHELL SCRIPT É uma poderosa ferramenta de automatização de tarefas e instruções. Tipos de shell bash (Linux Shell), o sh (Posix Shell), o ksh (Korn shell), bsh (Bourn shell), csh (C Shell), rksh (Korn Shell Restrito) e o rbsh (Bourn Shell Restrito). 3 Lopes SHELL SCRIPT Como funciona? Onde Funciona? Unix, Linux, Machintosh, Solaris, Freebsd entre outros; Como é executado? 4 Lopes TIPOS DE OPERADORES A Tabela abaixo mostra os operadores Lógicos e seu significado Tipo de operador && Significado E (lógico) AND || OU (lógico) OR 5 Lopes . A Tabela abaixo mostra os operadores aritiméticos e seu significado. Tipo de operador + * / % ** Significado Adição Subtração Multiplicação Divisão Módulo Exponenciação 6 Lopes A Tabela abaixo mostra os operadores de atribuição e comparação e seu significado. Tipo de operador -eq -ne -lt Significado Igual a Diferente de Menor que gt le ge Maior que Menor igual a Maior igual a 7 Lopes PRIMEIRO SHELL SCRIPT Elaborar um programa em Shell que escreva na tela: Bom dia a todos. 8 Lopes Código do programa exemplo em Shell Script. 9 Lopes Saída na tela do terminal do programaexemplo 10 Lopes CENÁRIOS PROPOSTOS Primeiro cenário Elaborar um programa para uma loja de chocolates, que leia preço e quantidade de bombons comprados por um cliente. Sabendo que acima de 10 bombons, um é de brinde, informe o valor a ser pago pelo cliente e a mensagem “1 bombom é brinde” caso a quantidade seja superior a 10 (se a quantidade for igual ou inferior a 10, exiba apenas o valor a pagar) 11 Lopes Código do programa Bombons em Java e sua execução. 12 Lopes int quantidade; Float preco, total; Declaração das variáveis Escreve na tela Preco R$: Le a variável preco; Escreve na tela N Bombons: Le a variável quantidade; Se quantidade for maior que 10; Calcula o total como sendo total = (quantidade-1)*preco; Escreve na tela A pagar R$ e seu valor; Escreve n a tela 1 bombom é brinde; senão Calcula o total como sendo total = quantidade*preco; Escreve na tela A pagar R$ e seu valor; 13 . Lopes Código do programa Bombons em Shell Script. 14 . Lopes Saída na tela do programa Bombons 15 Lopes Segundo cenário Elaborar um programa que leia o tempo de um gol no formato europeu e mostre-o no formato brasileiro (1º tempo e 2º tempo). Exiba: - Gol ocorreu aos xx min do 1º tempo (<= 45) - Gol ocorreu aos xx min do 2º tempo (> 45 e <= 90) - Gol ocorreu nos acréscimos (> 90) 16 Lopes Código do programa futebol em Java 17 Lopes int tempo, tempog; Declaração das variáveis Escreve na tela Tempo do gol: Le a variável tempo; Se tempo for menor ou igual a 45 minutos; Escreve na tela: Gol foi marcado aos “tempo digitado” do 1 tempo Senão se tempo menor ou igual a noventa Calcula o tempog como sendo : tempog (tempo-45); Escreve na tela: Gol foi marcado aos “tempog” do 2 tempo Senão Escreve na tela: Gol foi marcado nos acréscimos 18 Lopes Código do programa futebol em Shell-Script 19 Lopes Saída na tela do terminal do programa futebol 20 Lopes DIFERENÇAS ENTRE JAVA E SHELL SCRIPT PARA OS DOIS CENÁRIOS A Tabela abaixo mostra a comparação entres os comandos do Java e Shell Script e seu significado para os dois cenários. Java Shell Significado System out println “variável echo “variável Escreve na tela a variável Variável = entrada.nextTipodavariá vel read variável Lê a variável System out println “variável: “+variável echo “Variável: $variável” Escreve na tela e mostra o resultado else if + condiçaõ elif + condição Senão se + condição } fi Fim do programa 21 Lopes DIFICULDADES ENCONTRADAS Primeiro cenário total=$( echo "scale=2; ($quantidade-1)*$preco" | bc -l ) (1) total=$( echo "scale=2; $quantidade * $preco" | bc -l ) (2) Segundo cenário 22 Lopes CONCLUSÕES Trabalhar com Shell Script foi de grande valia, pois mesmo encontrando algumas dificuldades no decorrer do relatório é sempre muito importante aprender um pouco mais sobre outra linguagem de programação devido ao mercado de trabalho estar exigindo cada vez mais profissionais dinâmicos. Outro ponto muito importante foi a inserção no mundo acadêmico da produção de artigos científicos. 23 Lopes REFERÊNCIAS BIBLIOGRÁFICAS Couto, V. (2013) Operadores –Shell-script. Disponível em: http://gnulinuxbr.com/2010/04/07/operadores-shell-script/ . Acessado dia 30 de Abril de 2013. Iepsen, E. F. (2013) Exercícios de Revisão - Sábado (21/03/2013). http://187.7.106.14/edecio/algo/sabado2.pdf. Acessado em 4 de Maio de 2013. Iepsen, E. F. (2013) Repetições com For: Exercícios. Disponível em: http://187.7.106.14/edecio/algo/repeticao_for2_corrigido.pdf. Acessado em 5 de Maio de 2013.Iepsen Kuada, A. (2013) Programação em Shell Script. Disponível em: http://www.fesppr.br/~airton/so/shell.pdf. Acessado 09 de Maio de 2013. Disponível em: Neto, S. D. (2013) Fazendo cálculos em Script. Disponível em: http://www.samueldiasneto.com/shell/calc.html. Acessado em 03 de Maio de 2 http:// Souza, F, et al. (2010). Desenvolvimento de um Servidor de Backup Inteligente Utilizando a Linguagem Shell Script em Linux.Engenharia de Computação em Revista, 1(5). 24