zsh Cheatsheet
5.9Atajos, trucos y keybindings esenciales de zsh para tu terminal
Español: 2026-03-29
zsh es la shell predeterminada en macOS y está ganando terreno serio en Linux, y con razón — toma todo lo que hace bash y agrega autocompletado más inteligente, mejor globbing y un ecosistema de plugins que puede convertir tu terminal en algo genuinamente agradable de usar. Si has estado usando zsh sin saberlo (gracias, macOS Catalina), has estado conduciendo un auto deportivo en primera marcha.
El verdadero poder de zsh vive en su editor de línea. Esas combinaciones de Ctrl y Alt no son aleatorias — vienen de la edición estilo Emacs, que es el modo predeterminado. Cada vez que presionas Ctrl-a para saltar al inicio de una línea, estás usando la misma combinación que los usuarios de Emacs han usado desde los años 70. También puedes cambiar al modo vi si eso te va más, pero empieza con los predeterminados. Son sorprendentemente buenos una vez que los internalizas.
Este cheatsheet se enfoca en lo que te hará más rápido de inmediato: navegación de línea para que dejes de usar las teclas de flecha, trucos de historial que te ahorran reescribir comandos, patrones de globbing que dejan que zsh encuentre archivos por ti, y suficiente conocimiento de oh-my-zsh para configurar un entorno productivo sin ahogarte en opciones. Nos saltamos el manual de 400 páginas y nos quedamos con lo que rinde frutos a diario.
Navegación de Línea
Estos funcionan en el modo Emacs predeterminado (que es el que estás usando a menos que hayas cambiado explícitamente a vi). Graba estos en tu memoria muscular y tus manos nunca abandonarán la fila principal.
Historial
Tu historial de shell es una mina de oro. zsh guarda miles de comandos por defecto, y estos atajos te ayudan a buscarlos eficientemente en lugar de presionar la flecha arriba 47 veces.
Globbing
Aquí es donde zsh deja a bash en el polvo. El globbing de zsh es tan potente que puede reemplazar find para la mayoría de las búsquedas de archivos del día a día. Sin pipes, sin subshells, solo patrones.
Aliases
Los aliases son cómo haces que zsh se sienta tuyo. Aquí están los patrones que vale la pena conocer — los aliases específicos dependen de ti, pero estas formas desbloquean la mayor productividad.
Key Bindings
El editor de línea de zsh (zle) es totalmente personalizable. Puedes revincular cualquier tecla a cualquier acción, y hay cientos de widgets integrados para elegir.
Modo Vi
Si eres usuario de vim/nvim, el modo vi hace que zsh se sienta como en casa. Tienes modo normal, modo insert y la mayoría de los movimientos que ya conoces.
oh-my-zsh Esenciales
oh-my-zsh es el framework de zsh más popular, y se lo ha ganado. Pero con más de 300 plugins, es fácil inflar tu configuración. Aquí están los plugins y patrones que realmente vale la pena cargar.
Consejos
Agrega setopt AUTO_CD a tu ~/.zshrc y podrás navegar directorios solo escribiendo la ruta — sin necesidad de cd. Escribe .. para subir un directorio, ~/projects para ir al home. Una vez que te acostumbres, escribir cd se siente como pulsaciones desperdiciadas.
El plugin zsh-autosuggestions es posiblemente el mayor impulso de productividad que puedes agregar. Muestra predicciones de texto fantasma mientras escribes basadas en tu historial. Presiona la tecla de flecha derecha para aceptar toda la sugerencia, o Alt-f para aceptar solo la siguiente palabra. Instálalo y pregúntate cómo vivías sin él.
Usa Ctrl-x Ctrl-e (después de vincularlo con autoload -z edit-command-line && zle -N edit-command-line && bindkey '^X^E' edit-command-line) para abrir la línea de comandos actual en tu $EDITOR. Comandos largos con pipes y bucles son mucho más fáciles de componer en nvim que en una sola línea de terminal.
Configura tu historial correctamente. Agrega estos a ~/.zshrc y nunca perderás un comando:
HISTSIZE=50000, SAVEHIST=50000, setopt SHARE_HISTORY (sincronizar entre sesiones), setopt HIST_IGNORE_DUPS (omitir duplicados consecutivos), setopt HIST_IGNORE_SPACE (prefijar con espacio para mantenerlo fuera del historial — útil para comandos con secretos).
El globbing recursivo de zsh (**/*) es lo suficientemente potente para reemplazar el uso básico de find. ¿Quieres todos los archivos TypeScript? ls **/*.ts. ¿Quieres eliminar todos los archivos .DS_Store? rm -f **/.DS_Store. Es más rápido de escribir y más fácil de recordar que find . -name "*.ts".
Si las combinaciones con la tecla Alt no funcionan en tu terminal (común en macOS), ve a las preferencias de tu terminal y habilita "Usar Option como tecla Meta." En iTerm2 está en Profiles > Keys. En Terminal.app, está en Settings > Profiles > Keyboard. Sin esto, Alt-f, Alt-b y Alt-d están muertos al llegar.
Los aliases de sufijo son una función subestimada de zsh. Agrega alias -s py=python3 a tu ~/.zshrc y podrás ejecutar un script de Python solo escribiendo su nombre: script.py en lugar de python3 script.py. Funciona para cualquier extensión — mapea .json a jq ., .md a tu visor de markdown, .log a less.