Material de estudo e prática em Shell Scripting (Bash), organizado por tópico. A ordem abaixo é a sugestão de leitura — você pode pular tópicos opcionais ou voltar quando precisar.
| # | Tópico | Conteúdo |
|---|---|---|
| 1 | shell/shell.md | O que é shell, terminal vs shell, Bash/Zsh/Fish/sh |
| 2 | entrada_usuario/entrada.md | read e prompts |
| 3 | pipe/pipe.md | Pipes, grep, sort, exemplos com log.txt |
| 4 | condicional/condicional.md | if, test, [[ ]] |
| 5 | calculos/calculos.md | expr, (()), bc |
| 6 | case/case.md | Menus com case |
| 7 | loop/for.md | Loop for |
| 8 | loop/while.md | Loop while |
| 9 | funcoes/funcoes.md | Funções |
| 10 | fluxos/redirecionamento.md | stdin / stdout / stderr |
| 11 | fluxos/IFS.md | Parsing de campos, while read |
| 12 | texto/manipulacao.md | grep, sed, awk |
| 13 | arrays/arrays.md | Arrays |
| 14 | fluxos/robustez.md | set -euo pipefail, exit codes |
| 15 | fluxos/variaveis-ambiente.md | export, PATH, config, .env |
| 16 | pratica/calculadora/ | Projeto: calculadora |
| 17 | tmux/tmux.md | Sessões no terminal (opcional) |
| 18 | shell/sessoes.md | TTY/PTY, empilhamento, Windows/macOS (opcional) |
| 19 | trap/trap.md | SIGINT, EXIT, SIGHUP, limpeza |
| 20 | ssh/ssh.md | Chaves, ~/.ssh/config, scp, scripts remotos |
| 21 | pratica/integradora/ | Projeto: integradora de logs |
🚀 Comece por O que é um shell?.
- 📖 Dominar sintaxe e idiomas comuns do Bash para scripts reutilizáveis.
- 🔁 Entender condicionais, loops, funções, arrays e manipulação de texto.
- 🔗 Usar pipes, redirecionamento e variáveis como
IFSde forma consciente. - ⌨️ Trabalhar com entrada do usuário, cálculos, variáveis de ambiente e ferramentas auxiliares (por exemplo
tmux).
- 📚 Linux ou ambiente compatível com Bash (versão 4+ recomendada para arrays).
- 🖥️ No Windows ou macOS: shell.md (visão geral) e shell/sessoes.md (Git Bash, WSL, macOS).
| Recurso | Descrição |
|---|---|
| PLANO-EXERCICIOS.md | Roteiro completo com critérios de aceite |
| solucoes/ | Gabaritos de referência |
| validar-solucoes.sh | Checagem de sintaxe dos gabaritos |
| ssh-lab.md | Praticar SSH em localhost/Docker |
| iniciante.md | Atalho para os primeiros exercícios |
🧮 Calculadora — bash pratica/calculadora/calculadora.sh
📜 Integradora — cd pratica/integradora && bash script.sh (enunciado)
- 📖 Preferir
#!/usr/bin/env bashno shebang. - 📌 Citar variáveis:
"$var"e"$1". - 🔀 Testar sintaxe:
bash -n script.sh.
- 🌐 HTTP com
curl - 🖥️ Redirecionamento avançado (heredoc, subshells)
Links antigos: CAMINHOS-ANTIGOS.md.
Guia para alunos (impressão/PDF): GUIA-ALUNO.md
Material para estudo e formação. Se existir LICENSE na raiz, siga-o ao forkar.