gustavo leitão programação em shell script 4/1/2014 processo seletivo simplificado – professor...
TRANSCRIPT
![Page 1: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/1.jpg)
Gustavo Leitão
Programação em Shell ScriptProgramação em Shell Script
04/11/23
Processo Seletivo Simplificado – Professor SubstitutoCampus Natal Central
Disciplina Programação para Ambiente de Redes
![Page 2: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/2.jpg)
04/11/23
CONTEXTUALIZANDO O TEMA
![Page 3: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/3.jpg)
ROTEIRO DA AULA
04/11/23
![Page 4: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/4.jpg)
04/11/23
INTRODUÇÃO
![Page 5: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/5.jpg)
04/11/23
OBJETIVO DA AULA
![Page 6: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/6.jpg)
04/11/23
INTRODUÇÃO
![Page 7: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/7.jpg)
04/11/23
INTRODUÇÃOO que é Shell?
![Page 8: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/8.jpg)
04/11/23
INTRODUÇÃOImplementações de Shell
![Page 9: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/9.jpg)
04/11/23
INTRODUÇÃOExemplo de Comando
Listagem de diretório – Comando ls (Linux)
Listagem de diretório – Comando dir (Windows)
![Page 10: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/10.jpg)
04/11/23
INTRODUÇÃO
![Page 11: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/11.jpg)
04/11/23
INTRODUÇÃOShell Script
![Page 12: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/12.jpg)
04/11/23
INTRODUÇÃOExemplos de Aplicações
![Page 13: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/13.jpg)
04/11/23
![Page 14: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/14.jpg)
04/11/23
PRIMEIRO PROGRAMA
#!/bin/bash echo 'Nossa! Estou vivo!'
![Page 15: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/15.jpg)
04/11/23
PRIMEIRO PROGRAMA
![Page 16: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/16.jpg)
04/11/23
SINTAXE BÁSICA SHELL
![Page 17: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/17.jpg)
04/11/23
SINTAXE BÁSICA SHELLVariáveis
Áspas duplas -> variável interpretadaÁspas simples -> valor literal
Acento grave -> interpreta comando
![Page 18: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/18.jpg)
04/11/23
SINTAXE BÁSICA SHELLVariáveis de Ambiente
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.
![Page 19: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/19.jpg)
04/11/23
SINTAXE BÁSICA SHELLPrincipais Comandos
Mais comandos: http://www.guiaubuntupt.org/wiki/index.php?title=Comandos_basicos|
Comando Descrição
lsLista arquivos e diretóriosls –a #Arquivos ocultosls –l #Mais informações
rmRemove arquivos ou diretóriosrm -f leiame.txtrm -rf pasta
mkdir Cria um diretóriomkdir diretorio
cp Copia arquivoscp manual.txt /home/manual
mvMove e/ou renomeia arquivos.mv manual.txt ../mv manual.txt manual2.txt
cat Mostra o conteúdo do arquivocat manual.txt
grepFaz buscas em arquivos procurando linhas que atendas a expressão regular passada por parâmetrogrep apple fruitlist.txt ls | grep aula
![Page 20: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/20.jpg)
04/11/23
SINTAXE BÁSICA SHELLPassagem por Parâmetro
Comando Descrição
$# Número de Parâmetros passados
$1, $2, ... Os parâmetros passados para o script
$0 O nome do script shell
![Page 21: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/21.jpg)
04/11/23
SINTAXE BÁSICA SHELLOperações Aritméticas
![Page 22: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/22.jpg)
04/11/23
SINTAXE BÁSICA SHELLEntrada do Usuário
![Page 23: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/23.jpg)
04/11/23
SINTAXE BÁSICA SHELLControle de Fluxo (IF)
![Page 24: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/24.jpg)
04/11/23
SINTAXE BÁSICA SHELLOperadores
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 de Texto
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
![Page 25: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/25.jpg)
04/11/23
SINTAXE BÁSICA SHELLOperadores
-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
Operadores de Arquivos
![Page 26: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/26.jpg)
04/11/23
SINTAXE BÁSICA SHELLRepetição FOR
![Page 27: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/27.jpg)
04/11/23
SINTAXE BÁSICA SHELL
![Page 28: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/28.jpg)
04/11/23
EXEMPLO DE APLICAÇÃOBackup Automático
![Page 29: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/29.jpg)
04/11/23
EXEMPLO APLICAÇÃOAgendando o Backup
Minutos (0-59)
Hora (0-23)
Dia do mês (1-31)
Mês (1-12)
Dia da semana (0-6)
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...)
![Page 30: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/30.jpg)
04/11/23
NA INTERNET
![Page 31: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/31.jpg)
04/11/23
EXERCÍCIOS
![Page 32: Gustavo Leitão Programação em Shell Script 4/1/2014 Processo Seletivo Simplificado – Professor Substituto Campus Natal Central Disciplina Programação para](https://reader035.vdocuments.net/reader035/viewer/2022062623/552fc111497959413d8c607c/html5/thumbnails/32.jpg)
Gustavo Leitão
Programação em Shell ScriptProgramação em Shell Script
04/11/23
Processo Seletivo Simplificado – Professor SubstitutoCampus Natal Central
Disciplina Programação para Ambiente de Redes