Aula Linux III: Automação com Shell Script
Aprenda a criar scripts que trabalham por você.
Um script é um arquivo de texto contendo uma sequência de comandos que o sistema executa automaticamente.
#!/bin/bashCrie o arquivo e adicione o comando echo para imprimir texto.
nano ola.sh
Dentro do arquivo, digite:
#!/bin/bash
echo "Olá, mundo! Hoje é $(date)"
Por segurança, novos arquivos não são executáveis por padrão.
chmod +x ola.sh
./ola.sh
Armazene dados para usar depois (sem espaços ao redor do "=").
NOME="Professor"
echo "Bem-vindo, $NOME"
Faça o script interagir com quem o executa.
echo "Qual seu nome?"
read USUARIO
echo "Prazer em te conhecer, $USUARIO"
Use $1, $2 para capturar palavras enviadas junto ao comando.
./script.sh argumento1 argumento2
Verifica se uma condição é verdadeira.
if [ $USER == "root" ]; then
echo "Você é o superusuário!"
else
echo "Você é um usuário comum."
fi
Verificar se um arquivo existe antes de fazer algo.
if [ -f "/etc/passwd" ]; then
echo "Arquivo de senhas encontrado."
fi
Executa uma ação para vários itens.
for i in {1..5}; do
echo "Contagem: $i"
done
Repete enquanto a condição for verdade.
CONT=1
while [ $CONT -le 5 ]; do
echo "Número $CONT"
let CONT=$CONT+1
done
O Shell não faz contas direto, use $(( )).
SOMA=$((10 + 5))
echo "O resultado é $SOMA"
Agrupe comandos para reutilizar.
mensagem_erro() {
echo "ERRO: Algo deu errado!"
}
mensagem_erro
Salve o resultado de um comando dentro de uma variável.
IP=$(hostname -I)
echo "Seu IP é: $IP"
Um exemplo real: compactar uma pasta.
#!/bin/bash
DATA=$(date +%Y-%m-%d)
tar -czf backup_$DATA.tar.gz /home/usuario/documentos
Desafio: Crie um script chamado monitor.sh que:
- Mostre a data e hora atual.
- Mostre o tempo que a máquina está ligada (uptime).
- Mostre o uso da memória RAM.
- Salve todas essas informações em um arquivo chamado
log_sistema.txtautomaticamente.
Dica: Use o redirecionamento >> para salvar no arquivo sem apagar o que já existe.
Nenhum comentário:
Postar um comentário