1) Modelo mental de I/O en CLI
Entender flujos te permite razonar qué pasa en cada comando.
Por defecto, la mayoría de comandos leen desde stdin y escriben en stdout. Los errores operativos, en cambio, se envían a stderr.
Cuando todo va mezclado en pantalla parece cómodo, pero en automatización conviene separar para registrar resultados y fallos de forma independiente.
Este patrón es universal y aparece tanto en Bash/Zsh como en PowerShell, aunque con sintaxis y objetos distintos.
comando > salida.log 2> errores.log