Sistema Operacional Unidade 11.1 – Introdução ao Shell Script

QI ESCOLAS E FACULDADES Curso Técnico em Informática

CURSO TÉCNICO EM INFORMÁTICA

SUMÁRIO

INTRODUÇÃO ................................................................................................. 3 INICIANDO NO SHELL SCRIPT ........................................................................ 3 Exibindo valores .................................................................................................. 4 Recebendo valores ............................................................................................... 5

SISTEMA OPERACIONAL

QI ESCOLAS E FACULDADES

Variáveis de ambiente x variáveis do usuário ....................................................... 5 Exemplos de variáveis do sistema ........................................................................ 5 Criando uma variável ........................................................................................... 5 Exemplos de scripts ............................................................................................. 7 Exemplo 1: ....................................................................................................... 7 Exemplo 2: ....................................................................................................... 7 Exemplo 3: ....................................................................................................... 8

Coordenação Pedagógica Unidade 11.1 - Introdução ao Shell Script

Pág. 2

CURSO TÉCNICO EM INFORMÁTICA INTRODUÇÃO Shell Script é uma linguagem de programação muito utilizada no Linux e interpretada pelo shell. O shell por sua vez é o interpretador de comandos do Linux, ele é responsável pela interpretação de todos os comandos digitados no modo texto. A linguagem suporta desde comandos simples até poderosos scripts de configuração para servidores. Mas não podemos deixar de mencionar que o Shell Script também pode ser compilado através de compiladores como: o shc ou c-shell. Um compilador vai transformar um arquivo com a extensão “.sh” em arquivo binário.

SISTEMA OPERACIONAL

QI ESCOLAS E FACULDADES

Para criar um Shell Script podemos simplesmente digitar comandos no shell ou utilizar um editor de texto em modo gráfico ou em modo texto, nele vamos inserir os comandos que o script deverá executar. Imagine que Shell Script nada mais é que um arquivo de texto executável. Através de um script conseguimos automatizar tarefas no sistema operacional. Isso facilita a vida de um administrador de redes ou de servidores, por exemplo. Uma característica importante do Shell Script é que podemos utilizar as seguintes estruturas: 

Estruturas de decisão;



Estruturas de repetição;



Funções;



Variáveis;

As estruturas de decisão (if, switch) e estruturas de repetição (for, while) são comuns na maioria das linguagens de programação. Para que o aprendizado de Shell Script seja mais rápido, utilizaremos o editor de texto nano, devido a sua facilidade.

INICIANDO NO SHELL SCRIPT Todo programa deve começar com um interpretador de script. O programa inicia da seguinte maneira: #!/bin/bash Ou Coordenação Pedagógica Unidade 11.1 - Introdução ao Shell Script

Pág. 3

CURSO TÉCNICO EM INFORMÁTICA #!/bin/sh #: O sustenido, quando usado no início de uma linha é entendido como comentário pelo Shell. /bin/sh : Esse é o local do Shell no sistema. Esse comentário “#!/bin/sh” vai mostrar para o Shell que o arquivo é um script e que deve ser executado no shell. Após o comentário mostraremos para o Shell o que ele deve fazer. Por convenção os arquivos que serão scripts deverão ser salvos com a extensão “.sh”. Para executar um script através do modo gráfico, podemos simplesmente dar dois cliques para abri-lo. Automaticamente será aberto o terminal e o mesmo será

SISTEMA OPERACIONAL

QI ESCOLAS E FACULDADES

executado. No modo texto podemos executar de duas formas, são elas: sh nome_do_script.sh ou ./nome_do_script.sh Todo arquivo de script deve ser executável, ou seja, ele deve ter a permissão de execução pelo menos para o usuário (dono). Para isso pode ser utilizado o comando chmod. No Shell Script utilizamos o comando “sleep”, responsável por fazer uma pausa no decorrer do script. O tempo para essa pausa pode ser informado através de segundos. Mas para um script ficar completo, podemos ainda enviar informações para o usuário ou solicitar dados vindos do mesmo. Mas como fazer isso?

Exibindo valores Para enviar mensagens para o usuário, utilizamos os comandos “echo” ou “printf”. Podemos imprimir uma variável do sistema através destes comandos. Podemos utilizer os códigos: \n – para indicar uma quebra de linha no terminal \t – para indicar uma tabulação no terminal

Coordenação Pedagógica Unidade 11.1 - Introdução ao Shell Script

Pág. 4

CURSO TÉCNICO EM INFORMÁTICA Exemplo de uso do echo echo “Oi usuário” Exemplo de uso do printf printf “Oi usuário \n”

Recebendo valores Para receber informações digitadas pelos usuários, utilizamos o comando “read”. Ao utilizar o comando “read” devemos armazenar o valor recebido em algum lugar, no caso armazenaremos o valor em variáveis.

Variáveis de ambiente x variáveis do usuário

SISTEMA OPERACIONAL

QI ESCOLAS E FACULDADES

No Linux temos dois tipos de variáveis, as variáveis de ambiente gerenciadas pelo sistema e as variáveis de usuário, aquelas que nós mesmos declaramos. As variáveis são endereços de memória alocados temporariamente na memória RAM do computador (onde ficam armazenados valores temporaries). As variáveis no Linux são precedidas pelo caractere “$” (cifrão ou dollar como preferir). As variáveis do sistema são criadas em letras maiúsculas. Para visualizar as variáveis de ambiente, utilizamos os seguintes comandos: $printenv ou $env

Exemplos de variáveis do sistema 

SHELL: Exibe o nome do shell



PWD: Exibe o diretório corrente



HOME: Exibe o diretório home do usuário



LOGNAME: Exibe o login do usuário

Criando uma variável Para criarmos uma variável, podemos utilizar qualquer letra do alfabeto, lembrando que o shell é case sensitive, ou seja, ele diferencia letras maiúsculas de minúsculas, caracteres especiais, etc. Coordenação Pedagógica Unidade 11.1 - Introdução ao Shell Script

Pág. 5

CURSO TÉCNICO EM INFORMÁTICA Não é permitido iniciar o nome da variável com números. Para exibir um valor de uma variável precisamos colocar o sinal de cifrão (dólar) $ antes do seu nome. Para criarmos uma variável basta digitar o nome da variável e atribuir um valor através do sinal de “=” igual. Exemplo: nota1 recebe 10, ou seja, o valor 10 será atribuido à variável nota1. nota1=10 O valor pode ser expresso entre as aspas (“”), apóstrofes (‘) ou crases (`).

SISTEMA OPERACIONAL

QI ESCOLAS E FACULDADES

Mas qual é a diferença?  Aspas interpretam os valores que estiverem dentro das variáveis; 

Apóstrofes lerão o valor literalmente, sem interpretar nada;



As crases vão interpretar um comando e retornar a sua saída para a variável. Obs: Para realizar cálculos no shell utilizamos $((insira o cálculo aqui))

ATENÇÃO: O caracter especial “\” (contra barra) serve para “escapar” a interpretação, ou seja, não vai ser impresso o valor da variável, e sim o nome da mesma. Exemplo: realizando um cálculo thiagocury@tcury-note:~$ echo $((5+6)) Exemplo: sequência de comandos, criando variáveis com valores e calculando com as variáveis thiagocury@tcury-note:~$ valor1=5 thiagocury@tcury-note:~$ valor2=6 thiagocury@tcury-note:~$ total=$((valor1+valor2)) thiagocury@tcury-note:~$ echo $total 11 thiagocury@tcury-note:~$ Exemplo: exibindo variáveis de sistema juntamente com um texto echo “Você está neste momento no diretório: $PWD” Cuidado ao utilizar aspas(conhecida popularmente por aspas duplas) ou apóstrofe(conhecida por aspas simples).

Coordenação Pedagógica Unidade 11.1 - Introdução ao Shell Script

Pág. 6

CURSO TÉCNICO EM INFORMÁTICA Observe a seguir exemplos de exibição de mensagens utilizando aspas duplas e aspas simples. echo "caminho atual: $PWD" Saída no terminal: caminho atual: /home/thiagocury thiagocury@tcury-note:~$ echo 'caminho atual: $PWD' Saída no terminal: caminho atual: $PWD thiagocury@tcury-note:~$ echo caminho atual: $PWD Saída no terminal: caminho atual: /home/thiagocury thiagocury@tcury-note:~$ echo mostrar o caminho atual: $PWD"

"utilizando

variável:

\$PWD

SISTEMA OPERACIONAL

QI ESCOLAS E FACULDADES

vou

Saída no terminal: utilizando variável: $PWD vou mostrar o caminho atual: /home/thiagocury

Exemplos de scripts Exemplo 1: Script mostrando o calendário e a data do sistema. #!/bin/bash clear date sleep 5s clear cal sleep 5s clear Exemplo 2: Script avisando o usuário que está mostrando o calendário e a data do sistema. Esse script envia mensagens através do comando echo e printf. #!/bin/bash clear printf "Mostrando a data\n" date sleep 5s clear echo "Mostrando o calendário\n" cal sleep 5s clear

Coordenação Pedagógica Unidade 11.1 - Introdução ao Shell Script

Pág. 7

CURSO TÉCNICO EM INFORMÁTICA Exemplo 3: Script que solicita o nome do usuário e após, armazena em uma variável chamada “nome” e mostra o conteúdo da variável para o usuário. #!/bin/bash clear printf “digite seu nome: “ read nome printf “seu nome é: $nome”

Coordenação Pedagógica Unidade 11.1 - Introdução ao Shell Script

SISTEMA OPERACIONAL

QI ESCOLAS E FACULDADES

Pág. 8

Unidade 11.1 - Introdução ao Shell Script.pdf

Whoops! There was a problem loading more pages. Retrying... Whoops! There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Unidade 11.1 - Introdução ao Shell Script.pdf. Unidade 11.1 - Introdução ao Shell Script.pdf. Open. Extract.

591KB Sizes 2 Downloads 47 Views

Recommend Documents

Unidade Introdución Electrónica.pdf
Retrying... Whoops! There was a problem loading this page. Retrying... Unidade Introdución Electrónica.pdf. Unidade Introdución Electrónica.pdf. Open. Extract.

111 importers_saudi_arabia.pdf
Page 1 of 34. List of Saudi importers of food products. Sl. No. Name of. Importer. Address Phone/ Fax E-mail/ website. 1. A.K.. Almuhaidib &. Sons. PO Box:30,.

AUG 20 201 ..111
Aug 20, 2015 - UPLOADING OF LIS AND ONLINE ENCODING OF EOSY. 2014-2015 AND BOSY 2015-2016 FOR PRIVATE SCHOOLS. •. Date. August 20 ...

Shell Structures
Class C steels are those that have a history of successful application in welded structures at service ... API Spec 2H Grade 50 (over 2 1/2 in. thick). 47 ..... web or angle leg. 11.3 Allowable Compressive Stresses For Cones. Unstiffened conical tran

ao-2015-029_final.pdf
... passenger service from Sydney, New. South Wales to Kuala Lumpur, Malaysia. On departure from. runway 16R the aircraft was observed by air traffic control ...

111.pdf
entrepreneurship and family businesses has been intensified and evolved, with ... Page 3 of 17. 111.pdf. 111.pdf. Open. Extract. Open with. Sign In. Main menu.

111.PDF
Sign in. Loading… Whoops! There was a problem loading more pages. Retrying... Whoops! There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. 111.PDF. 111.PDF. Op

111 importers_saudi_arabia.pdf
Alhasa 31982. Tel. 00966-3-5875544. Fax: 5821677. 29. Alamro. Trading Co. Ltd. PO Box: 9695,. Riyadh 1123. Tel. 00966-1-4659987/. 4912358. Fax: 4659861.

Descargar ao frost
... libro hush hush español pdf.descargar libros defisica universitaria gratisen ... dragon ballz hyper dimension.descargar msn facebook chat gratis.descargar ...

Shell egg culling system
Jan 21, 1992 - a system for automatically detecting and culling shell eggs having clean shells from shell eggs having soiled shells; providing such a system wherein the shell eggs are inspected by a video system; providing such a sys tem wherein vide

Cloud Shell - GitHub
Cloud Shell is a Debian Linux VM with a 5GB persistent disk that you can access directly from the Console. Just click on the Activate Google Cloud Shell button ...

Violadas ao extremo 4
Big trouble missymissymartinez.This. helps my need as itcan ... The Outsiders pdf.041357316128971.Crazymachine mac. ... Taletales 720p.Big bang theory.

OICL AO Previous Year Paper.pdf
A merchant has 1000 kg of sugar, part of which he sells at 8% profit and the rest at 18% profit. He gains 14% on the whole. The quantity (in kg.) sold at 18% profit ...

Ao Vivo - 29 de janeiro.pdf
Ao Vivo - 29 de janeiro.pdf. Ao Vivo - 29 de janeiro.pdf. Open. Extract. Open with. Sign In. Main menu. Displaying Ao Vivo - 29 de janeiro.pdf. Page 1 of 27.

ex + 111+ ex - IEEE Xplore
[10] D. P. Standord, “Stability for a multi-rate sampled-data system,” SIAM ... thesis for the quadratic stabilization of a pair of unstable linear systems,”. Eur.

Portaria 111 - ausência.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Portaria 111 ...

KEA 111 ERSY.pdf
Operation mode TEST. − Sprinkler operation. Operation modes 10. Alarm monitoring. − Alarm announcing and acknowledgement. − Description of alarms.

RTJ:: ?: : g::'' ?#?*111 -
He is Programmes Manager at the Born Free Foundation in the UK, working principally on wildlife trade issues but is passionate about British wildlife too and ...