sábado, 14 de março de 2026

Aula Comandos Linux (Shell Script)

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.

Todo script deve começar com a "Shebang": #!/bin/bash

Crie 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:

  1. Mostre a data e hora atual.
  2. Mostre o tempo que a máquina está ligada (uptime).
  3. Mostre o uso da memória RAM.
  4. Salve todas essas informações em um arquivo chamado log_sistema.txt automaticamente.

Dica: Use o redirecionamento >> para salvar no arquivo sem apagar o que já existe.

Nenhum comentário:

Postar um comentário