Error recovery: rollback e compensação em scripts
Em Bash, todo comando retorna um código de saída entre 0 e 255. O valor 0 indica sucesso; qualquer outro valor indica erro. A variável $? captura o último código retornado:
Categoria
Em Bash, todo comando retorna um código de saída entre 0 e 255. O valor 0 indica sucesso; qualquer outro valor indica erro. A variável $? captura o último código retornado:
Expressões regulares (regex) são padrões de busca que permitem localizar, extrair e manipular texto de forma poderosa no Bash. Elas são essenciais para administradores de sistemas e desenvolvedores que precisam filtrar logs, validar entradas ou processar arquivos de configuração.
Em ambientes Linux, o gerenciamento de discos é uma tarefa recorrente que, quando automatizada, reduz drasticamente o trabalho manual e previne falhas catastróficas como discos lotados ou montagens incorretas. Scripts em Bash permitem monitorar, montar, limpar e sincronizar sistemas de arquivos de forma confiável e repetível.
Distribuir um script Bash vai muito além de compartilhar um arquivo. Envolve considerar dependências (como jq, curl, bc), o runtime (geralmente /bin/bash ou /usr/bin/env bash) e a portabilidade entre distribuições Linux e até mesmo macOS.
Todo desenvolvedor já passou pela situação de revisitar um script próprio meses depois e não entender o que cada bloco faz. A documentação adequada transforma scripts enigmáticos em ferramentas compreensíveis. Comentários estratégicos reduzem o tempo de manutenção em até 50% e previnem a introdução de bugs quando alterações são necessárias.
O Cron é um daemon (serviço em segundo plano) presente em sistemas Unix/Linux responsável por executar comandos ou scripts automaticamente em intervalos de tempo pré-definidos. Ele funciona como um relógio inteligente que dispara tarefas nos momentos exatos configurados pelo usuário.
O ambiente de shells Unix-like é diverso e fragmentado. Bash (Bourne Again SHell) é o shell padrão na maioria das distribuições Linux, Zsh (Z Shell) domina no macOS desde Catalina e é popular entre desenvolvedores, enquanto sh (geralmente um link simbólico para Dash no Debian/Ubuntu ou BusyBox em sistemas embarcados) representa o mínimo denominador comum POSIX.
Curl e wget são duas das ferramentas mais essenciais para qualquer profissional que trabalhe com Bash/Shell Script. Ambas permitem realizar requisições HTTP diretamente do terminal, mas possuem origens e focos distintos.
O Unix foi construído sobre um princípio fundamental: cada ferramenta deve executar uma única tarefa com excelência. Cut, sort, uniq e wc são exemplos clássicos desse design minimalista e poderoso. Em vez de programas monolíticos que tentam fazer tudo, temos comandos especializados que, quando combinados, resolvem problemas complexos de processamento de texto.
Automatizar tarefas de manutenção de banco de dados é essencial para garantir disponibilidade, desempenho e segurança dos dados. Scripts em Bash permitem orquestrar backups, operações de vacuum e otimização de forma consistente e sem intervenção manual. Esta abordagem é aplicável aos principais SGBDs: PostgreSQL, MySQL/MariaDB e SQLite.