domingo, 26 de fevereiro de 2012

Shell Script - Para iniciantes

Introdução

Uma maneira de facilitar os serviços repetitivos que é feito sempre por determinados períodos de tempo no Linux é criar Shell Scripts.

De grosso modo Shell Script nada mais é que uma sequência de comandos do próprio Linux que são executados.

1. Criando um shell script

Para criar um shell script é necessário seguir alguns passos:


1.1. Crie um arquivo

No terminal ou modo gráfico crie um arquivo que possa ser editado para que se torne o primeiro shell script a ser criado.

Exemplo:

touch shel1.sh


Onde:

touch - Comando utilizado para criar um arquivo vazio.


1.2. Dê direito de execução para o arquivo criado


Para que seja possível executar o um shell script é necessário atribuir ao mesmo direito de execução, para isso é necessário usar o comando chmod.

Exemplo:

chmod a+x shel1.sh


Neste exemplo nosso arquivo poderá ser executado por qualquer usuário do sistema. Antes de atribuir o direito de execução o arquivo era visto pelo terminal da cor padrão (neste caso preto), com o direito de execução agora passou a ser verde.


Abaixo é possivel ver a imagem após execução do chmod.


1.3. Abra o arquivo recém criado para edita-lo


Neste exemplo será utilizado o editor de teXto vi que pode ser utilizado no terminal, mas também pode ser utilizado qualquer editor grafico como gedit para altera o arquivo recém criado.



Exemplo:

vi shel1.sh





Na primeira linha de um shell scrit é necessário colocar uma linha de código que diz qual shell será utilizado (ksh, sh, bash), a linha pode ser vista abaixo:


#!/bin/bash



Código visto no vi.



img31.png



Código visto no gedit





Esta linha especifica qual shell será responsável por executar o shell scritp que será criado, neste exemplo o shell responsavel será o bash que está localizado na pasta /bin.



Apos a linha que contém o código acima é possível inserir os comandos desejados.

Neste exemplo vamos fazer um shell que abre a baia do leitor de cd e após 3 segundos a mesma será fechada. O código pode ser visto abaixo:


#!/bin/bash

echo "Abrindo gaveta..."

eject

sleep 2

echo "A gaveta será fechada..."

sleep 1

eject -t


 

Onde:

echo - Comando responsável por exibir uma mensagem na tela.

eject - Comando responsável por fazer a baia do leitor de cd ejectar.

eject -t - Comando reponsável por fazer a baia do leito de cd voltar para seu estado inicial.

sleep - Comando que pausa um o terminal por um tempo em segundos pré determinado.

1.3.1 Inserão de comentários



Para inserir um comentário em códigos de shell script basta inserir o #(cerquilha ou jogo da velha) na frente da linha que você deseja comentar, por exemplo:



#!/bin/bash

#Eu sou um comentário.

echo “Existe um comentário neste shell script”



1.4. Executando o arquivo.



Para executar o shell script recém criado basta seguir os seguintes exemplos:


Caso você esteja no mesmo diretório do arquivo basta executa-lo da seguinte maneira:

./shel1.sh



Caso o mesmo esteja em diretório diferente do que você se localiza, execute da seguinte maneira:

Sintaxe:

/.../diretorio/shel1.sh

Onde :

/.../diretorio - diretório no qual o shell está localizado.


Exemplo:

/tmp/maguscode/shel1.sh



 

2. Utilizando Váriaveis

Criar uma variavel em shell script é bem simples basta seguir a sintaxe abaixo:


Sintaxe:

nome_variável=VALOR


Onde:

nome_variavel – Nome da variável.

VALOR – Valor atribuido a variável criada.

Exemplos:

cor_casa=verde

numero=32


Neste exemplo serão criadas as variáveis “cor_casa” que tem como atributo o valor “verde”, também é criada a variável “numero” que tem como atributo o valor 32.

Para se utilizar a variável basta utilizar o $ (Sifrão) na frente do nome da variável, como pode ser visto no código do shell script baixo.

Exemplo:

#!/bin/bash
cor_casa=VERDE
echo “A cor da casa é $cor_casa”

A saída será:

A cor da casa é VERDE


2.1 Utilizando saída de comando como valor de variável

Caso se deseje manipular a saída de um determinado comando como valor para uma variável basta escolher uma das seguintes sintaxes:

Sintaxe:

nome_variavel=$(comando)

ou

nome_variavel=`comando`

Onde:

nome_variavel – Nome da variavel que receberá a saída do comando.

comando – Comando a ser executado.


Exemplo:

#!/bin/bash
total_linhas=$(ls | wc -l)


echo “Existe $total_linhas neste diretório.”

Esse script shell exibi na tela a quantidade de arquivos existe em um determinado diretório.


Saída do script executado.


























Nenhum comentário:

Postar um comentário