Programação em Shell Script

Slides:



Advertisements
Apresentações semelhantes
Curso Basico de Linux Marcela Santos
Advertisements

Adaptado do manual do DCC/UFMG e do livro ASO-M
Shell Script Professor: João Paulo
Processos no Unix e Linux
Conceitos Básicos sobre o S.O.
Colégio Técnico Vila Branca
Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para.
Programação Bash Mauro César Lopes. Shells bash csh sh tcsh ksh.
Administração de Sistemas Operacionais
Comandos para navegação no Sistema de Arquivos
Interpretador Online.
Prof. André Leon S. Gradvohl, Dr.
Manipulando Shell Script
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
Programação em shell Instituição:Faculdade SENAC Pelotas
Sistemas Operacionais II O Shell Bash. Objetivos Conhecer a sintaxe dos comandos; Trabalhar com funções; Trabalhar com variáveis; Expressões aritméticas;
Usuários e Grupos Usuário: alguém que possui conta, internamente é tratado como um número (UID) que é a identificação do usuário (USER ID). Cada usuário.
Primeiros passos em Shell Script
Iº Workshop Linux da Unijorge
Shell Script Parte 2.
SICII (Sistemas Operacionais) – Prof. Alberto  Comandos de console (Linux)
Universidade Federal do Pará Instituto de Ciências Exatas e Naturais Faculdade de Computação Linux – Prática Regiane Kawasaki
Evoluindo em comandos Unix / Linux Cid Rodrigues de Andrade No site acima encontram-se dados sobre licenciamento e forma.
Comandos Básicos do Linux Prof. Alberto Felipe. Os Sistemas Operacionais de hoje, incluindo o Linux, são todos baseados em interface gráfica, com o uso.
Shell Script Prof. Rafael Paoliello Guimarães FAESA.
Sistemas Operacionais de Redes Introdução ao Linux IGOR ALVES.
Fundamentos de Sistemas Operacionais Aula 2 Princípios de Programação Prof. Belarmino.
Automatização de Serviços – P1 SHELL SCRIPT Charles J. Busarello - IFPR.
Introdução à Informática com Software Livre 12:58.
Escola de Ciência e Tecnologia Curso: Bacharelado SI Disciplina: Segurança em Redes 1 Construindo um simples Script de Backup TAR – RSYNC – CRON SSH -
Pseudocódigo É a técnica na construção de algoritmos mais próxima de uma linguagem de programação. Estrutura básica: Algoritmo [Variáveis:, : ] Início.
Estruturas de Repetição
Aula 3 - Estruturas de Repetição
Gerência de Arquivos.
SOP - Modulo 5 Scripts no linux.
Administração de Sistemas Operacionais Não Proprietários 2º Semestre Aula 09 Prof. Carlos Vinícius SERVIÇO NACIONAL DE APRENDIZAGEM.
Estruturas de Dados Aula 2: Estruturas Estáticas
Sistemas Operacionais Comandos de Linux Ubuntu
OneLiners em Shell Julio Cezar Neves.
SISTEMAS OPERACIONAIS AULA 01 - Introdução aos Sistemas Operacionais
Introdução ao VisuALG Prof. Andrew Rodrigues
Introdução a Linguagem Java
Módulo I Capítulo 2: IDE e Variáveis
FUNDAMENTO DE PROGRAMAÇÃO LINGUAGEM C - CONCEITOS FUNDAMENTAIS
Prof. Wellington Franco Sub-Rotinas:Funções e Procedimentos
Prof. Wellington Franco
FUNDAMENTO DE PROGRAMAÇÃO
Nathan figueiredo °1 semestre ads
FUNDAMENTO DE PROGRAMAÇÃO PROF. BRUNO DE CASTRO H. SILVA
FUNDAMENTO DE PROGRAMAÇÃO PROF. BRUNO DE CASTRO H. SILVA
Automatização de Serviços – P2 AGENDADOR DE TAREFAS CRONTAB / AT
Access 2010 Microsoft. Access 2010  O Microsoft Access é um Sistema de Gestão de Base de Sados (SGBD) relacional em ambiente gráfico (Windows), que possibilita.
Programação de Computadores I – Arquivos
INTRODUÇÃO A COMPUTAÇÃO
Algoritmos e Técnicas CEFET/RN.
Algoritmos e Estruturas de Dados I
Algoritmos e Programação I
Tecnologia para Internet - II
Programação Estruturada Aula 1 Prof. Jorge Barreto Julho 2018.
ELEMENTOS DE INFORMÁTICA
Programação de Computadores I – Arquivos
Curso básico de PHP. 1 Vantagens: Gratuito Multiplataforma Estável Rapidez Comunicação.
Computação Eletrônica Vetores e Matrizes
Sistemas Operacionais de Redes Introdução ao Linux
Representação de Algoritmos
Tipos Primitivos de Dados
Sistemas Operacionais – Linux
JAVA - BÁSICO COL. ESTADUAL MARIA AGUIAR TEIXEIRA
Aula 2 Professores: Conteúdo: Dante Corbucci Filho
Transcrição da apresentação:

Programação em Shell Script Gustavo Leitão Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para Ambiente de Redes 9/18/2018

Contextualizando o Tema 9/18/2018 Contextualizando o Tema Aula Anterior Comunicação entre processos UNIX Esta Aula Programação em Shell Script Próxima Aula Funções em Shell Scipt e Aplicações Práticas

Roteiro da Aula Script de Backup Exemplo de Aplicação Agendamento 9/18/2018 Roteiro da Aula Introdução O que é shell? Implementações de Shell Exemplo de um comando O que é um Shell Script? Primeiro Programa Sintaxe Básica Variáveis Variáveis de Ambiente Principais Comandos Passagem por Parâmetro Operações Aritméticas Entrada do Usuário Controle de Fluxo Repetição FOR Exemplo de Aplicação Script de Backup Agendamento

9/18/2018 Introdução Objetivo da Aula

9/18/2018 Objetivo da Aula O aluno ao final da aula deverá ter compreendido o conceito de Shell, Shell Script, suas principais aplicações e deve ser capaz de construir algumas rotinas básicas.

9/18/2018 Introdução O que é Shell?

Usuário Shell Kernel Hardware Introdução 9/18/2018 Introdução O que é Shell? Hardware Kernel Shell Usuário O Shell é um programa que atua na interface entre o usuário e o kernel do sistema operacional. O kernel é quem acessa os equipamentos (hardware) da máquina, como disco rígido, placa de vídeo e modem.

Bash – Bourne Again Shell (O Mais popular) 9/18/2018 Introdução Implementações de Shell Linux sh (bourne) – Original csh, tcsh e zsh - Criado por Bill Joy do Berkeley UNIX Ksh e pdsh Bash – Bourne Again Shell (O Mais popular) Windows Cmd.exe

Introdução Exemplo de Comando 9/18/2018 Introdução Exemplo de Comando Listagem de diretório – Comando ls (Linux) Listagem de diretório – Comando dir (Windows)

9/18/2018 Introdução O que é Shell Script?

Arquivo pode ser executado. 9/18/2018 Introdução Shell Script Shell script é uma linguagem de programação interpretada usada em vários sistemas operativos. De outra maneira, é uma seqüência de comandos armazenados em um arquivo. Arquivo pode ser executado.

Compilar uma série de arquivos 9/18/2018 Introdução Exemplos de Aplicações Backups Automáticos Compilar uma série de arquivos Criar usuários do sistema

9/18/2018 Primeiro Programa!

Primeiro Programa Basta criar um arquivo texto com os comandos! 9/18/2018 Primeiro Programa Pronto! Torne-o executável com o comando chmod A primeira linha deve ser #!/bin/bash Basta criar um arquivo texto com os comandos! #!/bin/bash echo 'Nossa! Estou vivo!'

Se um erro ocorrer, o script segue a execução dos demais comandos! 9/18/2018 Primeiro Programa Se um erro ocorrer, o script segue a execução dos demais comandos! Comentários no código são iniciados pelo caracter #

9/18/2018 Sintaxe Básica Shell Sintaxe Básica Shell

Sintaxe Básica Shell Variáveis 9/18/2018 Sintaxe Básica Shell Variáveis Não existe a obrigatoriedade de se declarar uma variável Não é preciso definir o tipo da variável Valor pode ser uma frase, números, e até outras variáveis e comandos Ao referenciar uma variável deve-se colocar $ antes do seu nome identificador Áspas duplas -> variável interpretada Áspas simples -> valor literal Acento grave -> interpreta comando

Quando o script inicia algumas variáveis de ambiente são inicializadas 9/18/2018 Sintaxe Básica Shell Variáveis de Ambiente Quando o script inicia algumas variáveis de ambiente são inicializadas Para distinguir das variáveis criadas pelo usuário, as variáveis de ambiente são representadas com letras maúsculas Para ter uma lista completa das variáveis de ambiente basta digitar o comando env Variável Descrição $HOME O diretório HOME do usuário corrente. $PATH Lista de diretórios separados por ponto e vírgula (;) onde serão procurados os comandos. $USER O usuário. $PWD O diretório corrente.

Sintaxe Básica Shell Principais Comandos Comando Descrição ls rm mkdir 9/18/2018 Sintaxe Básica Shell Principais Comandos Comando Descrição ls Lista arquivos e diretórios ls –a #Arquivos ocultos ls –l #Mais informações rm Remove arquivos ou diretórios rm -f leiame.txt rm -rf pasta mkdir Cria um diretório mkdir diretorio cp Copia arquivos cp manual.txt /home/manual mv Move e/ou renomeia arquivos. mv manual.txt ../ mv manual.txt manual2.txt cat Mostra o conteúdo do arquivo cat manual.txt grep Faz buscas em arquivos procurando linhas que atendas a expressão regular passada por parâmetro grep apple fruitlist.txt ls | grep aula Mais comandos: http://www.guiaubuntupt.org/wiki/index.php?title=Comandos_basicos|

Você pode passar parâmetros para um script shell via linha de comando 9/18/2018 Sintaxe Básica Shell Passagem por Parâmetro Você pode passar parâmetros para um script shell via linha de comando Comando Descrição $# Número de Parâmetros passados $1, $2, ... Os parâmetros passados para o script $0 O nome do script shell

Sintaxe Básica Shell Operações Aritméticas 9/18/2018 Sintaxe Básica Shell Operações Aritméticas Formato de uma expressão aritmética: $((expressão)) Variáveis não precisam ser precedidas de $ Variáveis não definidas são inicializadas automaticamente com zero Aritmética é somente de inteiros

9/18/2018 Sintaxe Básica Shell Entrada do Usuário Você pode pedir entrada de valor para o usuário através do comando read O comando read bloqueia a execução do script a espera da entrada do usuário Quando o usuário clica <enter> a interpretação do script continua

9/18/2018 Sintaxe Básica Shell Controle de Fluxo (IF) Controle de fluxo são comandos que alteram o fluxo de execução do programa de acordo com o teste de condições

Sintaxe Básica Shell Operadores Operadores de Texto 9/18/2018 Sintaxe Básica Shell Operadores Operadores de Texto strin1=string2 Testa se as strings são iguais Strin1!=string2 Testa se as strings são diferentes -n string Testa se a string é não nula -z string Testa se a string é nula Operadores Aritméticos expr1 -eq expr2 Testa se as expressões são iguais expr1 -ne expr2 Testa se as expressões são diferentes expr1 -gt expr2 Testa se a expr1 é maior que a expr2 expr1 -ge expr2 Testa se a expr1 é maior ou igual a expr2 expr1 -lt expr2 Testa se a expr1 é menor que a expr2 expr1 -le expr2 Testa se a expr1 é menor ou igual a expr2 !expr1 Testa se expr1 é falsa

Sintaxe Básica Shell Operadores Operadores de Arquivos -d arq 9/18/2018 Sintaxe Básica Shell Operadores Operadores de Arquivos -d arq Testa se arq é um diretório -e arq Testa se o arquivo existe -f arq Testa se arq é um arquivo regular -r arq Testa se a o arquivo pode ser lido -u arq Testa se o arquivo tem tamanho diferente de zero -w arq Testa se o arquivo pode ser escrito -x arq Teste se o arquivo pode ser executado

A lista pode ser um conjunto de strings, arquivos, etc.. 9/18/2018 Sintaxe Básica Shell Repetição FOR Em Shell Script o for realiza um loop em uma determinada lista de valores. A lista pode ser um conjunto de strings, arquivos, etc..

9/18/2018 Sintaxe Básica Shell Exemplo de Aplicação

9/18/2018 Exemplo de Aplicação Backup Automático

Para agendar o backup deveremos usar o seguinte comando: 9/18/2018 Exemplo Aplicação Agendando o Backup Para agendar o backup deveremos usar o seguinte comando: crontab -e Campo Função Minuto 0-59 Hora 0-23 Dia do Mês 1-31 Mês 1-12 Dia da Semana 0-6 (O “0” é Domingo, “1” segunda, etc...) Dia da semana (0-6) Mês (1-12) Dia do mês (1-31) Hora (0-23) Minutos (0-59)

Na internet Comandos Linux Apostilas, Aula e Exemplos 9/18/2018 Na internet Comandos Linux http://www.guiaubuntupt.org/wiki/index.php?title=Comandos_basicos| Apostilas, Aula e Exemplos http://www.dca.ufrn.br/~guga

9/18/2018 Exercícios Desenvolva um programa em Shell Script que imprima na tela todos os parâmetros passados na linha de comando. O número de parâmetros passados não deve ser pré-fixado. 1 Desenvolva um programa que receba um arquivo como parâmetro e mostre a quantidade de palavras linhas do arquivo. 2

Programação em Shell Script Gustavo Leitão Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para Ambiente de Redes 9/18/2018