Baixe o app para aproveitar ainda mais
Prévia do material em texto
26/08/2014 1 PROGRAMAÇÃO PARA SERVIDORES Adaptado do Professor Msc. Raul Benites Paradeda AULA 01 Sumário Linguagens Interpretadas X Compiladas Quando utilizar shell script? Exemplos de shell script Observações Discussão O que é shell? O que é shell script? Prof. Márcio Rodrigo Advanced Bash- Scripting Guide Vantagens do shell script Unused Section Space 1 Unused Section Space 2 Unused Section Space 3 Unused Section Space 4 Unused Section Space 5 Unused Section Space 6 Unused Section Space 7 U n u s e d S e c t i o n S p U n u s e d S e c t i o n S p U n u s e d S e c t i o n S p a U n u s e d S e c t i o n S U n u s e d S e c t i o n S � Linguagens Interpretadas X Compiladas; � O que é shell? � O que é shell script? � Vantagens da programação shell script; � Quando utilizar shell script? � Exemplos de shell script; � Obervações; � Discussão; � Livro “Advanced Bash-Scripting Guide”. 26/08/2014 2 [Linguagens Interpretadas X Compiladas] � Alguém se lembra???? 26/08/2014 3 � Linguagem de programação que é convertida para linguagem de máquina por meio de compilação ou interpretação. � Quais as características das linguagens compiladas? 26/08/2014 4 � Quais as características das linguagens interpretadas? [O que é shell?] 26/08/2014 5 � Shell é a linha de comando do Linux (e Unix). � Alguns autores consideram o Shell como um programa, ou melhor, um interpretador, pois é ele que executa (interpreta) os comandos digitados pelo usuário no terminal ou no programa respectivo. � Outros, informam que o Shell é um programa que faz o meio campo entre o kernel do SO e o usuário. � O Shell é responsável por abrir os programas solicitados pelo usuário no terminal. � Além de executar os comandos do sistema, o Shell tem seus próprios comandos, como: IF, FOR, While, dentre outros. Inclusive a possibilidade de criar variáveis! � Também apresenta uma variedade de funções pré- definidas, tudo para facilitar a chamada de comandos. 26/08/2014 6 � Resumindo, o shell pode ser definido como o interpretador de comandos utilizado nos sistemas Linux e Unix. � Existem várias implementações de Shell, a mais conhecida é a bash. � Deve-se tomar cuidado, pois cada implementação possui estruturas e comandos próprios que os diferenciam. � Além disso, cada Shell oferece uma facilidade para realizar um reaproveitamento de comandos e manipulação da linha de comandos. 26/08/2014 7 � O Shell apresenta características de linguagens de programação, como já mencionado os comandos IF, For e While. � Por esse motivo, o Shell se torna uma poderosa ferramenta para a criação de scripts e de programas que facilitam o cotidiano. � Podemos criar pequenos scripts de 10 linhas por exemplo, até programas complexos. � Pelo motivo da grande interação com o Sistema Operacional, faz com que o Shell se torne uma poderosa ferramenta para o desenvolvimento de programas. 26/08/2014 8 � Por exemplo, pode-se criar interfaces interativas com o usuário, manipulação de banco de dados, rotinas de backup, gerenciamento da rede, e muito mais. � Um exemplo, é procurar dentro de todos os arquivos .txt uma determinada palavra: $ grep -s paradeda /etc/*.txt � Exemplo pra monitorar logs do squid, exibir somente os dados do IP 192.168.10.40. $ tail -f /var/log/squid/access.log | grep 192.168.10.40 [O que é shell script?] 26/08/2014 9 � Os Shell Scripts são arquivos que contém os comandos pertencentes ao Shell. � São muito utilizados para facilitar a vida do usuário, fazendo com que tarefas repetidas várias vezes possam ser realizadas de maneira mais rápida. � Pode-se criar scripts para automatizar as tarefas diárias de um servidor, para efetuar backup automático regularmente, procurar textos, criar formatações, e muito mais. [Vantagens do shell script] 26/08/2014 10 � Depois dessa explicação alguém, poderia me informar qual as vantagens do Shell Script? � Trabalha melhor que outras linguagens pois está ligada diretamente ao SO. � Agiliza as atividades dos usuários, principalmente quando há comandos que são repetidos a todo momento. � Não precisam ser compilados, basta criar um arquivo de texto qualquer, e inserir comandos a ele. 26/08/2014 11 � Mas como um arquivo de texto comum vai ser diferenciado de um Shell Script? � Para isso devemos inserir na primeira linha do arquivo o seguinte comando: #!/bin/bash � Em seguida, precisamos torná-lo executável com o comando chmod. $ chmod +x arquivo.extensao � Depois é só executá-lo: $ ./arquivo.extensao 26/08/2014 12 [Quando utilizar shell script?] � Recomenda-se o uso de Shell Script quando: � Um procedimento complexo que se usa muitas linhas de comando; � Um procedimento o qual muitos usuários poderão se beneficiar; � Um comando simples usado muitas vezes; � Uma tarefa em uma data planejada; � Integrar informações de vários sistemas diferentes. 26/08/2014 13 � O Shell pode trabalhar com grandes quantidades de informações, então porque gastar um tempão procurando determinadas informações em arquivos? � Utilizando o Shell pode-se achar as informações de forma automatizada e rápida. � E se essa procura for constante? � Então cria-se um Shell Script dos comandos utilizados no Shell para realizar a procura. � De acordo com uma pesquisa, um programador médio pode duplicar ou triplicar a produtividade com a utilização de Shell Script. � Comparativo: � Shell 1 linha de código � LPOO 10 linhas de código � C 100 linhas e código 26/08/2014 14 [Exemplos de shell script] #!/bin/bash echo "Escreva qualquer coisa:“ read texto echo "Foi digitado isso: $texto" 26/08/2014 15 #!/bin/bash pwd ls -l echo "fim do script." [Observações] 26/08/2014 16 � Para quem quer utilizar o Windows e programar em Shell não tem problemas, apenas algumas observações: 1. Ao criar um Shell Script no bloco de notas ou qualquer outro editor, automaticamente é usado o comando invisível ‘\r’ para realizar a quebra de linha. Dessa forma, antes de executar o script é necessário utilizar o comando: 1. $ dos2unix arquivo.extensao 2. Existem alguns programas que colocam as funcionalidades do Linux no Windows, o mais conhecido é o CygWin. [Discussão] 26/08/2014 17 � Depois de conhecer um pouco mais o Shell Script, quais as desvantagens e vantagens de se utilizar, será que vale a pena? [Advanced Bash-Scripting Guide] 26/08/2014 18 � O livro “Advanced Bash-Scripting Guide”, de autoria de Mendel Cooper. � Trata-se de um livro livre sobre programação bash cujo download pode ser feito a partir de “http://tldp.org”.
Compartilhar