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:
#!/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:
- 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".
- Apena comentários (para comentar linhas preceda-as por "#").
- Idem ao 2.
- O comando "echo" é utilizado para exibir um prompt ao
usuário para que ele digite o que deseja inserir no arquivo.
- Define que aquilo que o usuário digitou no prompt será
chamado pela string $inserir.
- 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!