Conceito e mecanismo
Em Bash, aspas duplas preservam valores expandidos como argumentos quando contêm espaços; aspas simples conservam o texto literal. Uma pipeline sem pipefail normalmente devolve o estado do último comando, pelo que tee pode esconder a falha de um gerador anterior. Ativar pipefail melhora propagação, mas ainda tens de decidir limpeza, retry e validade do artefacto. Publica resultados apenas depois de confirmar conclusão. Um código zero de uma etapa auxiliar não demonstra que o ficheiro está completo nem que o consumidor pode avançar.
Aplicação guiada
Execução agendada precisa de PATH, shell, identidade e diretório definidos; não deve depender da sessão interativa do autor. Em Ansible, prefere módulos que expressem estado desejado e verifica idempotência: repetir append não converge. Num repositório partilhado, revert regista a alteração inversa sem apagar o histórico, mas não desfaz efeitos externos já produzidos. Para scripts Python com dependências incompatíveis, ambientes virtuais separados reduzem conflitos; invoca o interpretador correto no scheduler. Um venv organiza dependências e não deve ser tratado como isolamento de segurança.
Um gerador escreve num ficheiro temporário, o script verifica estado e conteúdo, e o consumidor só recebe o resultado aprovado. Retries devem reconhecer efeitos já aplicados.
Armadilhas comuns
Usar o resultado de tee como prova do gerador; depender de PATH interativo; ignorar erros para parecer idempotente; reescrever branch partilhada.
Tópicos relacionados: Diagnóstico de disco, CPU e memória · Limites, rede e evidência do incidente
Repetição segura exige resultados observáveis e efeitos controlados.
Referência: bash(1): shell expansion and pipelines · XK0-006 V8