Download - Gustavo Leitão
Gustavo Leitão
Programação em Shell ScriptProgramação em Shell Script
04/24/23
Processo Seletivo Simplificado – Professor SubstitutoCampus Natal Central
Disciplina Programação para Ambiente de Redes
04/24/23
CONTEXTUALIZANDO O TEMA
ROTEIRO DA AULA
04/24/23
04/24/23
INTRODUÇÃO
04/24/23
OBJETIVO DA AULA
04/24/23
INTRODUÇÃO
04/24/23
INTRODUÇÃOO que é Shell?
04/24/23
INTRODUÇÃOImplementações de Shell
04/24/23
INTRODUÇÃOExemplo de Comando
Listagem de diretório – Comando ls (Linux)
Listagem de diretório – Comando dir (Windows)
04/24/23
INTRODUÇÃO
04/24/23
INTRODUÇÃOShell Script
04/24/23
INTRODUÇÃOExemplos de Aplicações
04/24/23
04/24/23
PRIMEIRO PROGRAMA
#!/bin/bash echo 'Nossa! Estou vivo!'
04/24/23
PRIMEIRO PROGRAMA
04/24/23
SINTAXE BÁSICA SHELL
04/24/23
SINTAXE BÁSICA SHELLVariáveis
Áspas duplas -> variável interpretadaÁspas simples -> valor literal
Acento grave -> interpreta comando
04/24/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.
04/24/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
04/24/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
04/24/23
SINTAXE BÁSICA SHELLOperações Aritméticas
04/24/23
SINTAXE BÁSICA SHELLEntrada do Usuário
04/24/23
SINTAXE BÁSICA SHELLControle de Fluxo (IF)
04/24/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
04/24/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
04/24/23
SINTAXE BÁSICA SHELLRepetição FOR
04/24/23
SINTAXE BÁSICA SHELL
04/24/23
EXEMPLO DE APLICAÇÃOBackup Automático
04/24/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...)
04/24/23
NA INTERNET
04/24/23
EXERCÍCIOS
Gustavo Leitão
Programação em Shell ScriptProgramação em Shell Script
04/24/23
Processo Seletivo Simplificado – Professor SubstitutoCampus Natal Central
Disciplina Programação para Ambiente de Redes