introdução à scripts do linux...meu primeiro shell script ex.: permissão de execução apenas...
TRANSCRIPT
![Page 1: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/1.jpg)
Introdução à Scripts do Linux
ICO60801 – 2014/1
Professores:
Bruno Fontana da Silva
Maria Cláudia de Almeida Castro
![Page 2: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/2.jpg)
O QUE SÃO SCRIPTS?
Aqui começa a diversão.
“Bem vindos à festa”.
(Jorge Liberato Delfino)
![Page 3: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/3.jpg)
Definição
Scripts são...
conjuntos de comandos (muitas vezes sequências de comandos)
armazenados em um arquivo.
![Page 4: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/4.jpg)
ls –l > fim.txt
adduser pinguim
cd ~
cd ~
mkdir iceberg
cp /etc/passwd ./
ls –l > fim.txt
![Page 5: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/5.jpg)
Exemplos de Aplicações:
Você pode criar um script para:
- Coletar vários arquivos de um site e enviá-los para um servidor;
![Page 6: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/6.jpg)
Exemplos de Aplicações:
Você pode criar um script para:
- Criar páginas WEB (ex.: HTML) mais facilmente;
![Page 7: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/7.jpg)
Exemplos de Aplicações:
Você pode criar um script para:
-Realizar backup automático dos seus arquivos;
![Page 8: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/8.jpg)
Exemplos de Aplicações:
Você pode criar um script para:
-Converter tipos de arquivos (imagens, texto, etc).
![Page 9: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/9.jpg)
Exemplos de Aplicações:
Você pode criar um script para:
- E muito mais...
![Page 10: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/10.jpg)
COMO COMEÇAR UM SCRIPT?
Dica para lembrar como começar um script.
![Page 11: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/11.jpg)
/bin /bash
Hashtag Exclamação /bin /bash
![Page 12: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/12.jpg)
Hashtag Exclamação /bin /bash
bin = lixeira
![Page 13: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/13.jpg)
Hashtag Exclamação /bin /bash
/ = slash
![Page 14: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/14.jpg)
CRIANDO MEU PRIMEIRO SCRIPT
Vamos criar nosso primeiro script no linux.
![Page 15: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/15.jpg)
Meu primeiro shell script
Vamos usar o editor de texto vi
$ cd ~ $ vi myscript.sh
![Page 16: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/16.jpg)
Entre em modo de
inserção com
i
![Page 17: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/17.jpg)
#!/bin/bash clear echo Hi world. echo Esse é o primeiro de muitos scripts.
![Page 18: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/18.jpg)
#!/bin/bash clear echo Hi world. echo Esse é o primeiro de muitos scripts.
Saia do vi salvando
seu arquivo com
ESC
:wq
![Page 19: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/19.jpg)
SCRIPTS PRECISAM SER EXECUTÁVEIS
Permissionamento de um script.
![Page 20: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/20.jpg)
Meu primeiro shell script
Ex.: Permissão de execução apenas para o dono:
$ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno data/hora myscript.sh
![Page 21: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/21.jpg)
EXECUTANDO SEU SCRIPT
Formas de executar um script.
![Page 22: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/22.jpg)
Meu primeiro shell script
Se o script estiver no diretório corrente:
$ sh myscript.sh
ou $ ./myscript.sh
![Page 23: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/23.jpg)
Meu primeiro shell script
Hi world. Esse é o primeiro de muitos scripts.
![Page 24: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/24.jpg)
VARIÁVEIS DE ENTRADA
Usando entradas.
![Page 25: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/25.jpg)
Variáveis de Entrada de Scripts
Variáveis de entrada são...
parâmetros de entrada para o script. São “valores” que serão
respectivamente substituídos para execução do script.
![Page 26: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/26.jpg)
Variáveis de Entrada de Scripts
Valores de variáveis...
são identificados com $ precedendo a variável.
Exemplo: $x representa o valor de uma variável cujo nome é x.
Use $1 para primeira entrada, $2 para segunda, etc.
![Page 27: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/27.jpg)
SEGUNDO SCRIPT: SOMADOR DE NÚMEROS INTEIROS
Criando nosso segundo script com variáveis de entrada.
![Page 28: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/28.jpg)
#!/bin/bash clear res=$(($1+$2)) echo $1 + $2 é igual a $res
$ cd ~ $ vi soma_rpn.sh
i ESC
:wq
![Page 29: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/29.jpg)
Variáveis de Entrada de Scripts
Mude o permissionamento e
entre com dois número para somar:
$ chmod u+x soma_rpn.sh $ ./soma_rpn.sh 4 3 4 + 3 é igual a 7
![Page 30: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/30.jpg)
Variáveis de Entrada de Scripts
Valores de variáveis...
Podem ser diretórios ou textos também.
![Page 31: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/31.jpg)
TERCEIRO SCRIPT: “ESCRITOR” DE ARQUIVOS
Criando nosso terceiro script com variáveis de entrada.
![Page 32: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/32.jpg)
#!/bin/bash clear echo $1 >> $2 echo O arquivo $2 possui o seguinte texto: echo cat -n $2
$ cd ~ $ vi escritor.sh
i ESC
:wq
![Page 33: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/33.jpg)
Variáveis de Entrada de Scripts
Mude o permissionamento e
entre com um texto e um endereço de um novo arquivo:
$ chmod u+x escritor.sh $ ./escritor.sh ‘’vamos fazer um teste’’ ~/myarq1 O arquivo /home/aluno/myarq1 Possui o seguinte texto: 1 vamos fazer um teste
![Page 34: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/34.jpg)
DICA: DEBUG DE SCRIPTS
Acompanhe o que o seu script está tentando fazer.
![Page 35: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/35.jpg)
Dica: Debug de Scripts
Exemplo: Para o nosso script soma_rpn.sh
$ sh -x soma_rpn.sh 5 2
e $ sh -v soma_rpn.sh 3 1
![Page 36: Introdução à Scripts do Linux...Meu primeiro shell script Ex.: Permissão de execução apenas para o dono: $ chmod u+x myscript.sh $ ls -l myscript.sh -rwxr--r-- 1 aluno aluno](https://reader034.vdocuments.net/reader034/viewer/2022042811/5fa3495283cb561c672adfbc/html5/thumbnails/36.jpg)
Vamos exercitar!
Baixar o exercício 18 na página da Wiki.