- Instalación de Zsh
- Introducción
- Navegación Básica
- Gestión de Archivos y Directorios
- Utilidades del Día a Día
- Búsquedas
- Tuberías y Redirecciones
- Atajos de Teclado Esenciales
- Editores de Texto
- El Poder de Zsh y Oh My Zsh
- Plugins de Oh My Zsh
- Alias útiles
- Yazi - Navegador de Archivos en Terminal
- Antidote - Gestor de Plugins para Zsh
- Personalización de Powerlevel10k
📦 Instalación de Zsh ↥
Para iniciar con el contenido de este repositorio, necesitarás instalar zsh
y aplicarlo como tu shell predeterminado.
Según tu distribución de Linux será el comando que debes ejecutar para instalar zsh
, este usualmente se puede encontrar de forma nativa en varios administradores de paquetes.
sudo apt update && sudo apt install zsh
sudo dnf install zsh
sudo pacman -S zsh
sudo zypper install zsh
Después de instalar zsh
, puedes aplicarlo como tu shell predeterminado ejecutando el siguiente comando:
chsh -s $(which zsh)
Por último, para que zsh
se aplique correctamente deberás cerrar tu sesión (y volver a entrar) o simplemente reiniciar.
🏠 Introducción ↥
Al iniciar nuestra terminal veremos un prompt único:
user_name@pc_name ~
user_name@pc_name
: Es el usuario@nombre_del_equipo~
: Es el directorio actual. El símbolo~
(llamado "tilde") es un atajo para tu carpeta personal (/home/usuario/
).
Nota: Usando Powerlevel10k verás un indicador visual (✓ o ✗) que muestra si el último comando se ejecutó con éxito o falló.
📂 Navegación Básica ↥
Lista el contenido del directorio actual.
Opciones útiles:
ls -l
: Muestra una lista detallada (permisos, propietario, tamaño, fecha).ls -a
: Muestra todos los archivos, incluyendo los ocultos (que empiezan con .).ls -h
: Usado con-l
, muestra el tamaño en formato humano (KB, MB, GB).ls --color
: Muestra la salida con colores, diferenciando carpetas de archivos.
Atajos de Oh My Zsh:
alias ll='ls -l'
alias l='ls -CF'
alias la='ls -A'
cd Descargas
: Ir a la carpeta de Descargascd
ocd ~
: Volver a tu carpeta personalcd -
: Volver al directorio anteriorcd ..
: Subir un nivelcd ../..
: Subir dos niveles
Consejo: Escribe
cd De
y presionaTab
. Zsh autocompletará aDescargas/
por ti.
Muestra la ruta completa del directorio actual.
pwd
# Salida: /home/usuario
📁 Gestión de Archivos y Directorios ↥
# Crear un directorio simple
mkdir Proyectos
# Crear directorios anidados
mkdir -p Proyectos/2025/Web
touch nota.txt
touch app.py
# Copiar un archivo
cp archivo.txt Documentos/
# Copiar y renombrar
cp archivo.txt copia_archivo.txt
# Copiar directorios (usar -r para recursivo)
cp -r directorio/ copia_directorio/
# Renombrar archivo
mv viejo.txt nuevo.txt
# Mover archivo
mv documento.txt Documentos/
# Mover y renombrar
mv archivo.txt Documentos/nuevo_nombre.txt
⚠️ ¡Cuidado! Los archivos eliminados no van a la papelera.
# Eliminar archivo
rm archivo.txt
# Eliminar directorio vacío
rmdir directorio_vacio
# Eliminar directorio con contenido (¡Usar con precaución!)
rm -r directorio_con_contenido
🛠️ Utilidades del Día a Día ↥
sudo comando
# Actualizar lista de paquetes
sudo apt update
# Actualizar el sistema
sudo apt upgrade
# Instalar software
sudo apt install nombre_paquete
# Eliminar software
sudo apt remove nombre_paquete
🔍 Búsquedas ↥
# Buscar archivos .conf
find . -name "*.conf"
# Buscar archivos modificados en los últimos 7 días
find /ruta -mtime -7
# Buscar "error" en archivos .log
grep "error" *.log
# Búsqueda recursiva
grep -r "palabra" /directorio/
🔄 Tuberías y Redirecciones ↥
# Tubería (|): Conectar comandos
ps aux | grep firefox
# Redirección (>): Guardar salida en archivo
ls -l > lista_archivos.txt
# Añadir al final de archivo (>>)
echo "nueva línea" >> archivo.txt
⌨️ Atajos de Teclado Esenciales ↥
Ctrl + C
: Cancelar comando actualCtrl + D
: Cerrar terminalCtrl + L
: Limpiar pantallaCtrl + A
: Ir al inicio de la líneaCtrl + E
: Ir al final de la líneaCtrl + U
: Borrar hasta el inicio de la líneaCtrl + K
: Borrar hasta el final de la líneaCtrl + W
: Borrar palabra anteriorCtrl + R
: Buscar en el historial
📝 Editores de Texto ↥
nano archivo.txt
Comandos básicos:
Ctrl + O
: GuardarCtrl + X
: SalirCtrl + K
: Cortar líneaCtrl + U
: Pegar
nvim archivo.conf
Modos principales:
-
Modo Normal (al abrir): Para navegación
h
,j
,k
,l
: Moverse (izquierda, abajo, arriba, derecha)i
: Entrar al modo Insertarv
: Modo Visual para seleccionar texto
-
Modo Insertar (i): Para escribir texto
Esc
: Volver al modo Normal
-
Comandos (desde modo Normal, presiona
:
)::w
: Guardar:q
: Salir:wq
: Guardar y salir:q!
: Forzar salida sin guardar
⚡ El Poder de Zsh y Oh My Zsh ↥
- Rutas:
cd /v/l
+Tab
→cd /var/log
- Comandos:
git ch
+Tab
→ Muestra opciones comocheckout
,cherry-pick
- Paquetes:
apt install
+Tab
→ Lista de paquetes disponibles
Ctrl + R
: Busca en el historial de comandos- Flechas arriba/abajo: Navega por comandos recientes
🔌 Plugins de Oh My Zsh ↥
Edita ~/.zshrc
para activar plugins:
plugins=(
git
z
colored-man-pages
sudo
wd
)
Plugins recomendados:
- git: Atajos como
gaa
paragit add --all
- z: Navegación rápida entre directorios frecuentes
- colored-man-pages: Manuales a color
- wd: Marcadores de directorios
🛠️ Alias útiles ↥
Añade esto a tu ~/.zshrc
:
# Actualización del sistema
alias update="sudo apt update && sudo apt upgrade -y && flatpak update"
# Atajos comunes
alias cls="clear"
alias fsh="fastfetch"
alias nsh="neofetch"
# Comandos en español
alias salir="exit"
alias ir="cd"
alias cds="yazi" # Administrador de archivos
Recarga la configuración:
source ~/.zshrc
🚀 Yazi - Navegador de Archivos en Terminal ↥
Yazi es un administrador de archivos rápido y potente escrito en Rust hecho para ser usado de manera eficiente en la terminal.
# Para Arch Linux (sin necesidad de usar Rustup, omitir todos los demás pasos)
sudo pacman -S yazi ffmpeg 7zip jq poppler fd ripgrep fzf zoxide resvg imagemagick
# Para Debian/Ubuntu (únicamente se instalan las dependencias necesarias para Yazi, Yazi debe ser construido con Rustup)
sudo apt install ffmpeg 7zip jq poppler-utils fd-find ripgrep fzf zoxide imagemagick
# Construir manualmente (necesario si tu distro de Linux no tiene paquetes nativos para Yazi)
# Instalar Rustup
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustup update
# Clona el repositorio y construye Yazi
git clone https://github.com/sxyazi/yazi.git
cd yazi
cargo build --release --locked
# Añade 'yazi' y 'ya' a tu $PATH
mv target/release/yazi target/release/ya /usr/local/bin/
yazi # Iniciar Yazi
Navegación:
h
/←
: Directorio anteriorl
/→
: Entrar al directorioj
/↓
: Bajar en la listak
/↑
: Subir en la listaq
: Salira
: Crear un archivo o directorio (para crear un directorio debe terminar en/
)d
: Borrar un archivo o directorio (son dirigidos al portapapeles)D
: Borrar un archivo o directorio (son eliminados permanentemente)y
: Copiar un archivo o directorioY
: Dejar de copiar el archivo o directorio más recientex
: Cortar un archivo o directorioX
: Dejar de cortar el archivo o directorio más recientep
: Pegar un archivo o directorio (funciona tanto cony
como conx
)
⚡ Antidote - Gestor de Plugins para Zsh ↥
Antidote es la cura para el manejo lento de plugins en Zsh.
git clone --depth=1 https://github.com/mattmc3/antidote.git ${ZDOTDIR:-$HOME}/.antidote
-
Crea los archivos necesarios:
touch ~/.zshrc_plugins.txt mkdir -p ~/.zshrc.d/ touch ~/.zshrc.d/aliases.zsh touch ~/.zshrc.d/keybindings.zsh
-
Añade plugins a
~/.zsh_plugins.txt
:zsh-users/zsh-autosuggestions zsh-users/zsh-syntax-highlighting
- O añade los plugins seleccionadamente curados de este repostorio en tu archivo
~/.zsh_plugins.txt
.
- O añade los plugins seleccionadamente curados de este repostorio en tu archivo
-
Añade el siguiente código al archivo
~/.zshrc
:source ${ZDOTDIR:-$HOME}/.antidote/antidote.zsh antidote load
- O añade el código ya personalizado out-of-the-box de este repositorio en tu archivo
~/.zshrc
.
- O añade el código ya personalizado out-of-the-box de este repositorio en tu archivo
-
Configura tus aliases y atajos de teclado copiando los archivos de configuración listos para usar:
# Copia los archivos de configuración predefinidos cp -r /ruta/a/Terminal-Linux/Zsh-Config/.zshrc.d/* ~/.zshrc.d/ # O copia manualmente los archivos si prefieres: # cp /ruta/a/Terminal-Linux/Zsh-Config/aliases.zsh ~/.zshrc.d/ # cp /ruta/a/Terminal-Linux/Zsh-Config/keybindings.zsh ~/.zshrc.d/
- Estos archivos contienen configuraciones optimizadas y listas para usar, incluyendo alias útiles y atajos de teclado personalizados.
-
Recarga la configuración:
exit
-
¡Abre otra terminal y disfruta de tu nueva experiencia rápida en Zsh!
🎨 Personalización de Powerlevel10k ↥
Después de instalar Oh My Zsh o Antidore con el tema Powerlevel10k, ejecuta:
p10k configure
Sigue el asistente para personalizar tu prompt. ¿Qué tal? ¿Fácil verdad?