O Shell Script (arquivos com extensão .sh
) é uma linguagem de script usada no ambiente de linha de comando Unix/Linux. Ele permite a automação de tarefas, execução de comandos, manipulação de arquivos e muito mais. Abaixo estão algumas das possibilidades e sintaxes comuns em Shell Script:
1. Declaração do Interprete
#!/bin/bash
- Define o interpretador a ser utilizado (neste caso, o bash).
2. Comentários
# Isto é um comentário
- Linhas começando com
#
são tratadas como comentários e não são executadas.
3. Variáveis
NOME="João"
IDADE=30
- Atribuição de valores a variáveis.
4. Uso de Variáveis
echo "Olá, $NOME. Você tem $IDADE anos."
- Para utilizar o valor de uma variável, preceda o nome com
$
.
5. Leitura de Entrada do Usuário
echo "Qual é o seu nome?"
read NOME
read
é usado para ler a entrada do usuário e atribuí-la a uma variável.
6. Estruturas Condicionais (if-else)
if [ condição ]; then
comando1
elif [ outra_condição ]; then
comando2
else
comando3
fi
- Permite a execução condicional de comandos.
7. Estruturas de Repetição (for e while)
for
loop
for i in {1..5}; do
echo "Contagem: $i"
done
while
loop
contador=0
while [ $contador -lt 5 ]; do
echo "Contagem: $contador"
((contador++))
done
8. Operadores Relacionais
-eq # Igual a
-ne # Diferente de
-lt # Menor que
-gt # Maior que
-le # Menor ou igual a
-ge # Maior ou igual a
9. Operadores Lógicos
&& # E
|| # OU
10. Teste de Arquivos/Diretórios
if [ -f arquivo.txt ]; then
echo "O arquivo existe."
fi
if [ -d /caminho/do/diretorio ]; then
echo "O diretório existe."
fi
11. Funções
minha_funcao() {
echo "Esta é uma função."
}
minha_funcao
12. Execução de Comandos Externos
resultado=$(ls)
13. Redirecionamento e Pipes
comando > arquivo.log # Redireciona a saída para um arquivo
comando < entrada.txt # Usa um arquivo como entrada
comando1 | comando2 # Pipe: a saída do comando1 é usada como entrada para o comando2
14. Execução Condicional (&& e ||)
comando1 && comando2 # comando2 é executado somente se comando1 for bem-sucedido
comando1 || comando2 # comando2 é executado somente se comando1 falhar
15. Arrays
nomes=("Ana" "João" "Maria")
echo "O primeiro nome é ${nomes[0]}"
16. Manipulação de Strings
nome="João"
echo "Olá, ${nome^}!" # Primeira letra maiúscula
echo "Olá, ${nome^^}!" # Todas as letras maiúsculas
Estas são apenas algumas das possibilidades e sintaxes comuns em Shell Script. Existem muitos outros recursos e comandos disponíveis para realizar tarefas mais complexas. Sempre consulte a documentação oficial do Bash para obter informações detalhadas.