El libro de bash que los domina a todos
Un nuevo libro sobre Bash y la línea de comandos provoca una reflexión más amplia sobre cuán a fondo conviene aprender scripting de shell frente a depender de herramientas como GPT, Stack Overflow o lenguajes de nivel superior. Los comentaristas comparan Bash con alternativas como PowerShell, Nushell, zsh y POSIX sh, ponderando portabilidad, legibilidad, sistemas de ayuda y encaje en el ecosistema, especialmente para flujos de trabajo en Linux frente a Windows. Muchos recomiendan recursos clásicos (páginas man/info, guías de Wooledge, ShellCheck, TLDP) y subrayan que entender los fundamentos de Unix suele importar más que dominar cada rincón de la compleja sintaxis de Bash.
Bash frente a otros shells (PowerShell, nushell, zsh, POSIX)
- Algunos sostienen que cualquiera a quien le “guste bash” debería estudiar PowerShell para ver una mejor ayuda, descubrimiento y manejo de datos estructurados; otros encuentran PowerShell demasiado verboso, inconsistente, centrado en Windows/.NET y poco útil en flotas Linux.
- Quienes lo apoyan destacan los comandos estandarizados verbo–sustantivo de PowerShell, su autocompletado sólido, la ayuda integrada y su estrecha integración con .NET, especialmente para scripting complejo y manipulación de objetos/JSON/XML.
- Los críticos enfatizan la ubicuidad de bash en Unix, la disponibilidad de herramientas GNU y el núcleo pequeño/eficiente en memoria (frente a la VM de PowerShell). Ven PowerShell y nushell como mundos de objetos “interior-first”, frente al modelo de bash de texto y herramientas “exterior-first”.
- Se elogia a nushell por ser más amigable con Unix y menos atado a .NET, pero aún no es lo bastante mainstream para uso en equipo.
- Algunos abogan por apuntar al shell POSIX (subconjunto de dash/ksh88) para portabilidad, y luego añadir funciones de bash/zsh según se necesite; otros se conforman con un “subconjunto sensato” de bash más zsh como shell interactivo.
Aprender Bash: libros, manuales y guías
- El libro recomendado es bien recibido como algo práctico, pero varios dicen que la referencia definitiva sigue siendo
man bash/info bash, pese a ser larga, seca y con pocos ejemplos. - Algunos cuentan que han usado bash productivamente durante años sin leer el manual; otros dicen que revisar por encima de vez en cuando toda la página de manual revela funciones potentes y comportamientos sutiles.
- El manual en línea de bash de GNU, Bash Guide/FAQ/Pitfalls de Wooledge y las guías de bash para principiantes y avanzados de TLDP se citan como recursos sólidos para aprender.
- Un punto de vista: el objetivo real es aprender Unix (procesos, archivos, herencia de C), no solo “aprender bash”.
LLMs (GPT) y el uso de Bash
- Varios comentaristas dicen que GPT ha “revolucionado” su uso de bash: generar rápidamente one-liners o explicar comandos complejos más rápido que los manuales o la búsqueda.
- Otros advierten sobre comandos alucinados o sutilmente incorrectos, especialmente los destructivos (
rm,mv,DROPde SQL). Consenso: tratar la salida de GPT como fragmentos no confiables de StackOverflow: revisarlos y probarlos. - El debate se centra en la destreza frente a las herramientas: algunos temen que depender demasiado frene el crecimiento de habilidades; otros sostienen que el tiempo ahorrado permite aprender más dominios.
Archivos de configuración de Bash
- Se ofrece una explicación clara:
- Login vs no-login; shells interactivos vs no interactivos.
~/.bash_profile(o~/.profile) para shells de login,~/.bashrcpara shells interactivos no de login; en muchos sistemas simplemente se hacesourcede~/.bashrcdesde~/.bash_profile.
- Algunas peculiaridades de distribuciones (por ejemplo, la carga cruzada de archivos) causan confusión.
Miscelánea
- Discusión de las cubiertas con animales al estilo O’Reilly y sus parodias.
- Se señala que el enlace de Amazon del artículo es un enlace de afiliado, algo que algunos consideran que conviene tener en cuenta.