Linha de comando do Unix e Linux, é o servo que recebe
os comandos digitados pelo usuário e os executa.
Passos para criar um script.
Escolher um nome para o script / escolher o diretório onde colocar o script ( para executar de
qualquer parte do sistema mova para o PATH, caso contrário utilizar ./ antes do nome do script.)
Criar o arquivo e colocar nele os comandos ( VI, Vim etc )
A primeira linha deve ser sempre iniciada por: #!/bin/bash
Tornar o script um arquivo executável / chmod +x
Alguns comandos e funções
O comando "echo" serve para mostrar mensagens na tela. Ex: echo "Data e Horário:" Se nenhum
texto for colocado, uma linha em branco é mostrada.
O comando read vai ler e armazenar o conteúdo digitado pelo usuário em uma variável. Ex: read
VARIAVEL
O comando test é útil para fazer vários tipos de verificações em textos e arquivos. Ex: test
"$RESPOSTA" = "n" && exit
O conteúdo da variável é acessado
colocando-se um cifrão "$" na frente
Ao iniciar a linha com um "#" e escrever o texto do comentário em seguida. Estas linhas são ignoradas pelo
shell durante a execução.
é possível colocar comentários
no meio da linha # como este
Variáveis
É dentro delas que os dados obtidos durante a
execução do script serão armazenados
Para definir uma variável, basta usar o sinal de
igual "=" e para ver seu valor, usa-se o "echo":
O conteúdo da variável é acessado
colocando-se um cifrão "$" na frente
é possível armazenar a saída de um
comando dentro de uma variável.
o comando deve ser colocado entre "$(...)". Ex: HOJE=$(date)
o comando "unset" apaga uma variável.
O formato de um comando é sempre: COMANDO OPÇÕES PARÂMETROS
O "read" é um comando do próprio shell, já o "date"" é um executável do sistema. Dentro de um
script, não faz diferença usar um ou outro, pois o shell sabe como executar ambos.
Alguns exemplos : cat - mostra o arquivo / cut - extrai campo / find - encontra arquivos / sort - ordena texto
tail - mostra final de um arquivo / tr - transforma texto / uniq - remove duplicatas
Use "man comando" para obter mais
informações sobre cada um deles.
É possível combinar comandos, aplicando-os em seqüência,
para formar um comando completo. Usando o pipe "|" é
possível canalizar a saída de um comando diretamente para
a entrada de outro, fazendo uma cadeia de comandos.
Ex: cat /etc/passwd | grep root | cut -c1-10
Assim como qualquer outra linguagem de programação, o shell também tem
estruturas para se fazer condicionais e loop. As mais usadas são if, for e while.
o if testa um comando e não uma condição.
Já o while é um laço que é executado enquanto um comando retorna OK
o for percorre uma lista de palavras, pegando uma por vez: