Shell script é o nome dado a um arquivo que será interpretado por algum programa tipo Shell. Atualmente existem vários programas tipo Shell. Além dos principais - sh e bash -, existem também, ksh, zsh, csh e tcsh. Um Shell script (ou script em Shell) necessita basicamente do interpretador Shell.
Algumas operações típicas executadas por linguagens de script em Shell incluem; manipulação de arquivos, execução de programas e impressão de texto. Sendo assim é muito comum que scripts sejam utilizados para automatização de tarefas - como configurar o ambiente, executar um programa e fazer qualquer limpeza, registro, etc.
A ideia deste post é fazer um apanhado geral para criação de scripts.
Nome dos arquivos
Apesar do Linux não exigir que você coloque extensão nos arquivos, é comum utilizar a extensão .sh o que visualmente facilita o reconhecimento de um script. Exemplo: script_x.sh
Estrutura de um script
#!/bin/bash
# ou #!/bin/sh (dependendo do shell que você estiver utilizando).
# Todo script deve começar com a linha acima (# é usada para definir comentários)
cd /
ls -l
#Para definir uma variável, basta usar o sinal de igual "=" e
#para ver seu valor, usa-se o "echo":
#Não podem haver espaços ao redor do igual "=" no valores das variáveis
NOME_VARIAVEL=Hugo
echo $NOME_VARIAVEL
#Repare que para exibir o conteúdo da variável foi utilizado o caractere $
#Ainda é possível armazenar a saída de um comando dentro de uma variável. Ao invés #de aspas, o comando deve ser colocado com o caractere "$()", vejam:
HOJE=$(date)
echo $HOJE
#O comando read é para ler informações digitadas pelo usuário e criar variáveis
#O parâmetro –n é apenas para ficar na mesma linha
echo -n "Digite um número:"
read NUMERO1
echo -n "Digite outro número:"
read NUMERO2
# A construção usada para indicar uma expressão aritmética é
# "$((...))", com dois parênteses.
echo "A soma entre os dois número é" $((NUMERO1 + NUMERO2))
#Os scripts que usam estruturas condicionais possibilitam criar duas ou mais #respostas para a condição exposta. Assim como qualquer outra linguagem de #programação, o shell também tem estruturas de condição e repetição. As mais usadas #são if, for e while.
#estruturas de condição
IDADE=18
if [ IDADE -eq 18 ] then
echo "É maior de idade"
else
echo "É menor de idade"
fi
#Operadores aritméticos + - * / % **
#Operadores relacionais -eq(igual) -ne(diferente) -lt(menor) -le(menor ou igual)
# -gt(maior) -ge(maior ou igual)
#Operadores lógicos || &&
#teste em arquivos
if [ -f /tmp/teste.txt ] then
echo "arquivo existe"
else
echo "arquivo inexistente"
fi
#CASE
echo "Digite 1 ou 2"
read opcao
case $opcao in
"1") echo "você digitou 1";;
"2") echo "você digitou 2;;
*) echo "opção inválida";;
esac
exit
#estrutura de repetição
#while
i=1
while [$i -le 100]
do
echo $i
i=$(($i+1))
done
#for
for passo in $(seq 10)
do
echo passo
done
#FUNÇÕES
IDADE=18
CALCULARIDADE()
{
if [ $IDADE -eq 18 ] then
echo "Maior de 18"
}
CALCULARIDADE
#funcoes podem receber parâmetros
echo "Nome do script: $0"
echo "Número total de parâmetros: $#"
echo "Primeiro parâmetro: $1"
echo "Segundo parâmetro: $2"
echo "Décimo quinto parâmetro: ${15}"
echo "Todos os parâmetros: $*”
Passos a serem realizados para execução de um script
- Criar um arquivo com a extensão .sh
- Iniciar com a tag e o Shell a ser utilizado.
- Digitar os comandos do script e salvar o arquivo
- Dar permissão de execução para o script
- executar o script com "./"
Bom é isso aí! Até a próxima.
Nenhum comentário:
Postar um comentário