Shells en la práctica: Bash, Zsh y PowerShell sin confusiones

Aprende diferencias reales entre Bash, Zsh y PowerShell para elegir bien tu entorno y evitar comandos incompatibles.

La shell define sintaxis, autocompletado, variables y estilo de scripting.

Bash y Zsh comparten filosofía Unix; PowerShell trabaja con objetos y comandos propios.

Conocer la shell activa evita errores de copy/paste en tutoriales.

No existe shell universalmente mejor: depende de sistema, equipo y flujo de trabajo.

  • Diagnosticar primero te ahorra minutos (o horas) de frustración.
  • En Linux/macOS, lo normal es Bash o Zsh. En Windows moderno, PowerShell es muy común y cmd sigue existiendo por compatibilidad.
  • Muchos comandos que parecen 'de terminal' en realidad son de una shell concreta. Por ejemplo, `ls` puede comportarse diferente entre entornos.
  • Cuando trabajas en equipo, conviene documentar explícitamente la shell esperada en README o scripts de onboarding.
  • Sintaxis similar no significa comportamiento idéntico.

1) Identifica tu shell actual antes de ejecutar nada

Diagnosticar primero te ahorra minutos (o horas) de frustración.

En Linux/macOS, lo normal es Bash o Zsh. En Windows moderno, PowerShell es muy común y cmd sigue existiendo por compatibilidad.

Muchos comandos que parecen 'de terminal' en realidad son de una shell concreta. Por ejemplo, `ls` puede comportarse diferente entre entornos.

Cuando trabajas en equipo, conviene documentar explícitamente la shell esperada en README o scripts de onboarding.

2) Diferencias que impactan en tu día a día

Sintaxis similar no significa comportamiento idéntico.

3) Criterio profesional para elegir shell

La mejor shell es la que mejora tu flujo real con tu stack real.

Si trabajas sobre tooling Linux, Bash/Zsh suele ser la opción más natural. Si administras entornos Windows y Azure, PowerShell te da ventajas claras.

Puedes combinar: Windows Terminal + PowerShell para administración + WSL Bash para tareas de desarrollo web.

La clave es consistencia en equipo: define una base común y documenta variantes por sistema operativo.

  • Evalúa compatibilidad con scripts existentes.
  • Prioriza curva de aprendizaje del equipo.
  • Documenta setup mínimo reproducible.
  • Evita depender de alias personales no compartidos.
Terminal
02

Shells en la práctica: Bash, Zsh y PowerShell sin confusiones

Aprende diferencias reales entre Bash, Zsh y PowerShell para elegir bien tu entorno y evitar comandos incompatibles.

Código del tema: Comandos reproducibles y trazables

📘 Teoría

1) Identifica tu shell actual antes de ejecutar nada

Diagnosticar primero te ahorra minutos (o horas) de frustración.

1

En Linux/macOS, lo normal es Bash o Zsh. En Windows moderno, PowerShell es muy común y cmd sigue existiendo por compatibilidad.

2

Muchos comandos que parecen 'de terminal' en realidad son de una shell concreta. Por ejemplo, `ls` puede comportarse diferente entre entornos.

3

Cuando trabajas en equipo, conviene documentar explícitamente la shell esperada en README o scripts de onboarding.

2) Diferencias que impactan en tu día a día

Sintaxis similar no significa comportamiento idéntico.

1

Bash/Zsh: texto como flujo principal

Muy potentes en pipes, utilidades Unix y scripting clásico.

2

PowerShell: pipeline de objetos

Puedes filtrar propiedades estructuradas sin parsear texto manualmente.

3) Criterio profesional para elegir shell

La mejor shell es la que mejora tu flujo real con tu stack real.

Si trabajas sobre tooling Linux, Bash/Zsh suele ser la opción más natural. Si administras entornos Windows y Azure, PowerShell te da ventajas claras.

Puedes combinar: Windows Terminal + PowerShell para administración + WSL Bash para tareas de desarrollo web.

La clave es consistencia en equipo: define una base común y documenta variantes por sistema operativo.

  • Evalúa compatibilidad con scripts existentes.
  • Prioriza curva de aprendizaje del equipo.
  • Documenta setup mínimo reproducible.
  • Evita depender de alias personales no compartidos.

🧪 Aprende probando

Ejemplo Ejemplo guiado: comparación rápida de comandos Mismo objetivo (listar archivos ocultos) en Bash/Zsh y PowerShell.

🏁 Retos

Reto Reto: deja explícita tu shell en un script Escribe una línea de comentario inicial indicando shell y una comprobación de versión.

🧰 Recursos

Test

Comprueba tus conocimientos con un test sobre Terminal.

Test de Terminal

¿Qué es esto?

Soy Cristian Eslava y a veces hago webs para procrastinar yo y vosotros. culTest

La hice en febrero de 2026 para facilitar el aprendizaje de mis alumnos. La idea es aprender desarrollo web practicando y que el proyecto siga creciendo con nuevos temas, tests y retos.

Está inspirada en MDN, W3Schools, CodePen, Manz y muchos otros sitios de documentación sobre desarrollo web. Quería combinar teoría útil, ejemplos ejecutables, retos y el sistema de tests que ya tenía en culTest. culTest

Si te gustó, si no te gustó o si quieres escribirme, puedes hacerlo en cristianeslava@gmail.com