Creación de alias, para agilizar el trabajo en linea de comandos

La creación de alias tanto temporales como permanentes nos permite crear comandos que resulten cortos e intuitivos y que realicen instrucciones que usamos habitualmente.

Creación de alias, para agilizar el trabajo en linea de comandos.

Cuando realizas tareas en el terminal de Linux es muy habitual teclear de forma recursiva comandos extensos con opciones complejas, que si no eres un buen mecanografista puede ser frustrante a la hora de escribir, corregir, volver a escribir, o repasar en que carácter nos hemos equivocado.

Por ejemplo, supongamos que realizamos una recarga, actualización y limpieza de vez en cuando de los paquetes de nuestra distribución:

sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y

💻 Desglose del Comando

El operador && asegura que el siguiente comando solo se ejecute si el anterior finalizó exitosamente (código de salida 0).

1. sudo apt update

  • Propósito: Este comando descarga la información más reciente sobre los paquetes disponibles desde los repositorios configurados. No actualiza ningún paquete en sí, sino que actualiza la lista local de paquetes que tu sistema conoce (el índice). Si no ejecutas este comando primero, apt upgrade podría no saber que hay versiones más nuevas de software disponibles.

2. sudo apt upgrade -y

  • Propósito: Este comando instala las nuevas versiones de todos los paquetes instalados actualmente en tu sistema.
  • Qué hace: Compara las versiones instaladas con las listas que obtuviste en el paso anterior (update) e instala todas las actualizaciones de software.-y (o --yes): Este flag indica que responda automáticamente ‘sí’ a cualquier pregunta de confirmación durante el proceso de instalación. Esto permite que el proceso se ejecute sin supervisión.

3. sudo apt autoremove -y

  • Propósito: Este comando elimina automáticamente los paquetes obsoletos que ya no son necesarios.
  • Qué hace: Identifica y elimina las dependencias que fueron instaladas para un paquete, pero que ya no son requeridas por ningún otro paquete instalado. Por ejemplo, si actualizaste tu kernel de Linux, este comando elimina las versiones antiguas que ya no usas, liberando espacio en disco.-y: De nuevo, asegura que la eliminación se ejecute sin pedir confirmación.

La creación de alias tanto temporales como permanentes nos permite crear comandos que resulten cortos e intuitivos y que realicen instrucciones que usamos habitualmente.

Nuestra distribución linux viene con alias predeterminados, para saber cual son, podemos usar el comando:

alias
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l='ls -CF'
alias la='ls -A'
alias ll='ls -alF'
alias ls='ls --color=auto'
Si queremos crear una alias temporal que solo existirá mientras la sesión de terminal esté abierta:
alias nombre_del_alias='comando_a_reemplazar'

Usando el comando anterior como ejemplo podríamos crear una alias temporal:

alias actualizar="sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y"
Si queremos crear un alias permanente del mismo comando, debes añadirlo a uno de los archivos de configuración de inicio de tu shell.

Para la mayoría de los usuarios de Bash (el shell más común), este archivo es el .bashrc (o a veces .bash_profile o .profile).

nano ~/.bashrc

Añade tus alias al final del archivo en una nueva linea. Es buena práctica agruparlos bajo un comentario para mantener el archivo organizado:

# Mis Alias Personalizados
#Actualiza lista de paquete y los actualiza desde los repositorios y borra automaticamente los paquetes obsoletos
alias actualizar="sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y"

Guarda el archivo y ejecuta:

source ~/.bashrc

Esto recarga la configuración para que los alias estén disponibles inmediatamente.

Archivos de configuración de los principales gestores de comando utilizados en linux

Shell Archivo Principal de Configuración Descripción
Bash (Bourne-Again Shell) ~/.bashrc El shell más común. Este archivo se carga para las sesiones no interactivas e interactivas (cuando se abre una terminal).
Zsh (Z Shell) ~/.zshrc Ganando mucha popularidad (es el shell predeterminado en macOS). Este archivo es el equivalente directo a .bashrc.
Fish (Friendly Interactive Shell) ~/.config/fish/config.fish Un shell moderno con sintaxis simplificada y características avanzadas (como autocompletado avanzado) listas para usar.
Ksh (Korn Shell) ~/.kshrc o ~/.profile El .kshrc es el preferido para configuraciones interactivas.
csh/tcsh (C Shell / Tenex C Shell) ~/.cshrc o ~/.tcshrc El C Shell usa un estilo de sintaxis diferente (parecido a C).

Sugerencias de alias de los comandos mas utilizados en terminal:

Alias en Español Comando Completo (Original) Descripción Categoría
listar ls -alh Muestra lista detallada, con tamaños legibles y archivos ocultos. (Muy usado) Archivos
lista ls -CF Lista simple, en columnas, con indicadores de tipo (/, *). Archivos
subir cd .. Sube un nivel en la jerarquía de directorios. Navegación
casa cd ~ Vuelve al directorio personal (Home). Navegación
hacerdir mkdir -p Crea un directorio y todos los padres necesarios. Archivos
eliminar rm -i Elimina archivos, preguntando por confirmación (-i). Archivos
copiar cp -iv Copia, preguntando antes de sobrescribir y mostrando el progreso. Archivos
mover mv -i Mueve o renombra archivos, preguntando antes de sobrescribir. Archivos
leer cat Muestra el contenido completo de un archivo. Archivos
verlog tail -f Muestra las últimas líneas de un archivo y sigue añadiendo las nuevas (útil para logs). Archivos
buscar grep --color=auto Busca texto en archivos, resaltando los resultados en color. Búsqueda
encontrar find . -name Inicia una búsqueda de archivos por nombre en el directorio actual. Búsqueda
historial history Muestra la lista de comandos ejecutados previamente. Sistema
quiensoy whoami Muestra el nombre del usuario actual. Sistema
memoria free -h Muestra el uso de la memoria RAM y Swap en formato legible. Sistema
disco df -h Muestra el uso del espacio en disco en formato legible. Sistema
tamanio du -sh * Muestra el tamaño total de cada directorio y archivo en el directorio actual. Sistema
actualizar sudo apt update && sudo apt upgrade -y Actualiza la lista de paquetes e instala las actualizaciones (solo para Debian/Ubuntu). Mantenimiento
limpiar sudo apt autoremove -y Elimina las dependencias de paquetes que ya no son necesarias (solo para Debian/Ubuntu). Mantenimiento
todo sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y Actualización completa y limpieza. Mantenimiento
ejecutar chmod +x Otorga permisos de ejecución a un archivo (por ejemplo, un script). Permisos
procesos ps aux Muestra todos los procesos del sistema. Procesos
matar kill Envía una señal para terminar un proceso por su PID. Procesos
servidor ssh Inicia una conexión segura remota. Red
descargar wget Descarga un archivo desde una URL. Red
# ==================================
# Alias Personalizados en Español
# ==================================
# Navegación y Archivos
alias listar='ls -alh'
alias lista='ls -CF'
alias subir='cd ..'
alias casa='cd ~'
alias hacerdir='mkdir -p'
alias eliminar='rm -i'
alias copiar='cp -iv'
alias mover='mv -i'
alias leer='cat'
alias verlog='tail -f'

# Búsqueda
alias buscar='grep --color=auto'
alias encontrar='find . -name'

# Mantenimiento (Debian/Ubuntu)
alias actualizar='sudo apt update && sudo apt upgrade -y'
alias limpiar='sudo apt autoremove -y'
alias todo='sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y'

# Información y Sistema
alias historial='history'
alias quiensoy='whoami'
alias memoria='free -h'
alias disco='df -h'
alias tamanio='du -sh *'
alias ejecutar='chmod +x'
alias procesos='ps aux'
alias matar='kill'
alias servidor='ssh'
alias descargar='wget'
Compartir en: