Pular para o conteúdo

Introdução ao Shell Script

Nesta série de quatro artigos serão apresentados os principais conceitos de Shell Script. Nesta primeira parte discutiremos o que é shell script e você poderá criar seu primeiro script.
Tadeu Rocha misterlinux
Hits: 106.573 Categoria: Shell Script Subcategoria: Introdução
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Introdução

Olá, meu nome é Tadeu (misterlinux).

Este artigo é sobre a introdução ao uso de shell scripts. Sei que a maioria de vocês sabem usar shell scripts, mas como já andei muito pelo Viva o Linux e ainda não vi um bom tutorial de introdução a shell scripting, resolvi então criá-lo.

O script abaixo não é meu, mas serve como base para explicação.

Introdução a Shell Scripting


Shell scripts são um meio de executar várias tarefas em apenas um comando, muitas vezes com o objetivo de facilitar o trabalho de quem os usa. A facilidade na criação destes scripts é um ponto forte que faz com que muitas pessoas optem por este tipo de linguagem sempre que possível, pois estes possuem algumas limitações.

A seguir um exemplo de shell script bem simples. Crie o arquivo adicionar.sh com o seguinte conteúdo:

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
#!/bin/sh
# Shell script para adicionar uma linha com conteúdo definido
# pelo usuário a um arquivo qualquer

echo -e "Inserir:" '\c'
read inserir
echo $inserir >> $1

Salve-o em /home/adicionar.sh e dê a ele permissão de execução:

# chmod +x /home/adicionar.sh

Agora digite no prompt:

$ /home/adicionar.sh nome_do_arquivo_a_ser_alterado

A seguir a explicação de cada linha:
  1. Essa linha especifica ao shell qual interpretador deve ser usado para a execução do programa, como este é um shell script, o interpretador usado é o sh, contido no diretório "/bin".
  2. Apena comentários (para comentar linhas preceda-as por "#").
  3. Idem ao 2.
  4. O comando "echo" é utilizado para exibir um prompt ao usuário para que ele digite o que deseja inserir no arquivo.
  5. Define que aquilo que o usuário digitou no prompt será chamado pela string $inserir.
  6. Finalmente, utiliza o comando "echo" para enviar o que o usuário digitou para a última linha do arquivo que foi especificado no primeiro argumento do comando "$1".
Simples, não?! Agora vamos a algumas dúvidas que podem ter surgido:

P: Por que foram utilizados os argumentos "-e" e "'\c'" no comando "echo"?
R: O argumento "-e" habilita a interpretação de argumentos como o "'\c'", que por sua vez é utilizado para que crie-se um prompt na posição em que ele estiver.

P: Pra que serve esse ">>"?
R: Serve para aquilo que seria exibido na saída default seja inserido em um determinado arquivo sem destruir o conteúdo do mesmo. Caso fosse um ">" solitário, o conteúdo do arquivo seria destruído e ele passaria a ter apenas o que foi fornecido por nós. Esse tipo de função chama-se "append".

Até a próxima pessoal!

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   1. Introdução

Introdução ao Shell Script (parte 2)

Enviar e-mail pelo terminal com mutt

O que é Shell Script

Personalize seu shell na entrada de seu logon

Criando um banner em flash no Linux

Monitoramento automático de logs e alertas por e-mail - Fácil e explicado

#1 Comentário enviado por lordello em 25/11/2003 - 00:25h
Amiguinho, achei muito legal você abordar esse assunto, para béns.
Você podia indicar alguns sites com tutoriais sorbe shell script, seria muito legal, com exemplos se possível.
Falow!
#2 Comentário enviado por linuxdeveloper em 15/04/2004 - 16:52h
legal esse seu script se vc souber como eu posso comecar criar um script que faca
um invasor e barrado pelo meu portsentry e seu ip fica bloqueado quero pegar esse ip e criar uma rota para ele para fazer o contra como poderia fazer isso
#3 Comentário enviado por linuxdeveloper em 15/04/2004 - 16:53h
legal esse seu script se vc souber como eu posso comecar criar um script que faca
um invasor e barrado pelo meu portsentry e seu ip fica bloqueado quero pegar esse ip e criar uma rota para ele para fazer o contra como poderia fazer isso
#4 Comentário enviado por linuxdeveloper em 15/04/2004 - 16:56h
legal esse seu script se vc souber como eu posso comecar criar um script que faca
um invasor e barrado pelo meu portsentry e seu ip fica bloqueado quero pegar esse ip e criar uma rota para ele para fazer o contra como poderia fazer isso
#6 Comentário enviado por lfsantos em 30/04/2004 - 11:18h
Eu gostei muito desse artigo, mas ele já foi publicado aqui a alguns meses. Então até a próxima.
#7 Comentário enviado por mzanetti11 em 23/10/2004 - 18:54h
gostaria de saber como pego valores de um arquivo xml jogo estes valores em variaveis de um script, pode me ajudar
#8 Comentário enviado por breulitro em 07/12/2004 - 02:46h
tri bom esse artigo
#9 Comentário enviado por hercules em 20/02/2005 - 08:11h
Cara foi bem legal.
Será que vc poderia enviar algum material pro meu e-mail, estou fazendo um trabalho da escola e não to conseguindo encontrar um material bom de introdução para o Shell script. Valeu mesmo.
meu e-mail é herculesjpa@hotmail.com
#10 Comentário enviado por mailws em 11/11/2005 - 19:29h
Ainda não entendi...
#11 Comentário enviado por PhenriquePH em 26/12/2006 - 22:25h
muito legal esse artigo bem interessante gostei bastante
#12 Comentário enviado por tiagonetwork em 02/05/2007 - 10:52h
Até quem enfim, uma definição simples e dirte do shell, valeu guri...
#13 Comentário enviado por anselmu em 02/06/2008 - 14:47h
Muito legal o artigo. Aguardo os próximos.
#14 Comentário enviado por agl77 em 10/10/2008 - 15:03h
cada comando shell e ótimo saber pra q serve
abç
#15 Comentário enviado por patrão01 em 14/05/2009 - 20:17h
Quero saber como posso trabalhar com o Script no bactrack?
#16 Comentário enviado por removido em 30/12/2010 - 01:08h
patrão01

O bactrack pode ser utilizado como qualquer outra distribuição!
Independente se tu queres usar o shell!!!

Seguindo o exemplo do camaradinha ai funciona normalmente no backtarck!!!

Pena que ele clonou o artigo!!

#17 Comentário enviado por rayanmaia em 31/08/2012 - 17:51h
Muito bom este post.
Valeu.

Contribuir com comentário

Entre na sua conta para comentar.