Diccionario de comandos GNU/Linux: la guía A a la Z de la terminal
Un repaso ordenado por categorías a los comandos imprescindibles para administrar un sistema GNU/Linux, con enlace al diccionario original de voidNull.
Un diccionario para no perderse en la terminal
En GNU/Linux conviven dos grandes familias de comandos: los comandos de shell, como cd o mkdir, y las utilidades de GNU coreutils, como less, además de herramientas adicionales como curl, wget o dt. Dominarlas todas es imposible de golpe, pero sí es posible tener una referencia clara de qué hace cada una.
Eso es precisamente lo que propone el diccionario «De la A a la Z: Los comandos de GNU/Linux» de voidNull, escrito por Don T3rr0rZ0n3. Es una colección en orden alfabético que enlaza a artículos completos sobre cada comando, y que sigue creciendo.
En este post agrupamos los comandos por categorías, para que sea más fácil encontrar lo que buscas según la tarea que tengas entre manos.
Ficheros y directorios
| Comando | Para qué sirve |
|---|---|
cd |
Cambiar de directorio y moverte por el árbol de carpetas. |
ls |
Listar el contenido de un directorio. |
tree |
Mostrar la estructura de carpetas en forma de árbol. |
mkdir |
Crear directorios. |
cp |
Copiar ficheros y directorios. |
mv |
Mover o renombrar ficheros y directorios. |
rm |
Eliminar ficheros y directorios. Es una de las órdenes más peligrosas si se usa sin cuidado. |
touch |
Crear ficheros vacíos o actualizar sus marcas de tiempo. |
ln |
Crear enlaces simbólicos o enlaces duros. |
find |
Buscar ficheros y directorios según criterios como nombre, tamaño o fecha. |
locate |
Buscar ficheros de forma muy rápida usando una base de datos indexada. |
whereis / which |
Localizar binarios, manuales y la ruta del ejecutable que se va a usar. |
file |
Identificar el tipo real de un fichero analizando su contenido. |
fallocate |
Reservar espacio en disco para un fichero sin escribir datos. |
mktemp |
Crear ficheros y directorios temporales de forma segura. |
tar, zip, xz |
Empaquetar y comprimir ficheros. |
rsync, scp |
Sincronizar y copiar ficheros, en local o a través de la red. |
Lectura, procesamiento y edición de texto
| Comando | Para qué sirve |
|---|---|
cat |
Concatenar ficheros y mostrarlos por pantalla. |
less, more |
Visualizar ficheros de texto página a página, con desplazamiento. |
head, tail |
Ver las primeras o últimas líneas de un fichero. tail es ideal para seguir logs en directo. |
grep |
Buscar texto que coincida con un patrón (expresiones regulares). |
sed |
Transformar y editar texto en un flujo de datos. |
awk |
Analizar y procesar datos organizados en columnas. |
cut |
Extraer secciones concretas de cada línea. |
paste |
Unir líneas de varios ficheros en columnas. |
sort |
Ordenar las líneas de un fichero o de una salida. |
tr |
Traducir o sustituir caracteres. |
nl |
Numerar las líneas de un fichero. |
wc |
Contar líneas, palabras o caracteres. |
diff |
Comparar ficheros o directorios y mostrar sus diferencias. |
echo |
Mostrar mensajes o escribirlos en un fichero. |
tee |
Mostrar una salida por pantalla y guardarla a la vez en un fichero. |
Permisos, propietarios, usuarios y grupos
| Comando | Para qué sirve |
|---|---|
chmod |
Modificar los permisos de ficheros y directorios. |
chown |
Cambiar el propietario y el grupo de ficheros y directorios. |
chattr |
Establecer atributos avanzados del sistema de ficheros, como la inmutabilidad. |
useradd |
Crear usuarios con control detallado, a bajo nivel. |
adduser |
Crear usuarios con un proceso más guiado y automatizado. |
usermod |
Modificar usuarios existentes, incluidos sus grupos. |
userdel |
Eliminar usuarios del sistema. |
addgroup, groupdel |
Crear y eliminar grupos. |
groups |
Consultar a qué grupos pertenece un usuario. |
quota |
Limitar y consultar el espacio en disco que usa cada usuario o grupo. |
Procesos y control de trabajos
| Comando | Para qué sirve |
|---|---|
ps |
Ver los procesos que se están ejecutando. |
top, htop |
Monitorizar procesos en tiempo real. htop ofrece una interfaz más cómoda y visual. |
kill |
Terminar procesos enviándoles señales. |
nice |
Lanzar procesos con una prioridad determinada. |
jobs, bg |
Controlar los trabajos de la shell y enviarlos a segundo plano. |
nohup |
Mantener un proceso en marcha aunque cierres la sesión. |
screen, tmux |
Multiplexores de terminal: varias sesiones dentro de una sola conexión, que sobreviven a cortes de SSH. |
reptyr |
Trasladar un proceso en ejecución a otra terminal. |
watch |
Repetir un comando a intervalos regulares y mostrar su salida. |
at |
Programar la ejecución de un comando una sola vez en un momento concreto. |
sleep |
Introducir pausas, útil dentro de scripts. |
Redes y diagnóstico
| Comando | Para qué sirve |
|---|---|
ip |
Gestionar interfaces, rutas y configuración IP. |
ping |
Comprobar si un equipo responde. |
traceroute, mtr |
Seguir la ruta de los paquetes hasta un destino. mtr combina ping y traceroute con estadísticas en vivo. |
ss, netstat |
Ver conexiones y puertos abiertos. ss es la opción preferida en la mayoría de distribuciones actuales. |
netcat |
Comprobar si un puerto está escuchando y diagnosticar problemas de red. |
nmap |
Descubrir equipos, servicios y versiones en una red. |
dig, nslookup, dt |
Consultar registros DNS de un dominio. |
iperf3 |
Medir el ancho de banda real entre dos equipos. |
tc |
Controlar el tráfico de red: limitar ancho de banda, prioridades o latencia. |
ipinfo |
Consultar información geográfica y de red de una IP desde la terminal. |
curl, wget |
Transferir datos desde URLs. wget es ideal para descargas y curl para interactuar con APIs. |
ssh, telnet |
Conectarse a equipos remotos. ssh es seguro; telnet envía los datos sin cifrar. |
netplan |
Configurar la red mediante ficheros YAML, en Ubuntu y derivadas. |
Discos, particiones y sistemas de ficheros
| Comando | Para qué sirve |
|---|---|
df, duf |
Ver el espacio libre de los sistemas de ficheros montados. duf lo muestra en tabla y con color. |
du |
Calcular cuánto espacio ocupan ficheros y directorios. |
lsblk, blkid |
Listar dispositivos de bloque y consultar sus etiquetas, UUID y tipo de sistema de ficheros. |
fdisk, parted |
Crear, modificar y eliminar particiones. |
mkfs |
Formatear particiones con un sistema de ficheros, como mkfs.ext4. |
mount |
Montar sistemas de ficheros y dispositivos en el árbol del sistema. |
lsof |
Listar los ficheros abiertos por cada proceso. |
fdisk, parted y mkfs pueden destruir datos en un segundo. Revisa siempre dos veces el disco de destino antes de ejecutarlos.
Hardware, sistema y energía
| Comando | Para qué sirve |
|---|---|
free |
Consultar la memoria RAM y la swap usadas y disponibles. |
vmstat |
Estadísticas de memoria, CPU, disco y swap. |
lscpu |
Información de la CPU: núcleos, hilos y soporte de virtualización. |
lshw |
Información detallada del hardware del equipo. |
lspci, lsusb |
Listar dispositivos conectados al bus PCI y USB. |
lspower |
Estado de baterías y fuentes de energía. |
inxi |
Resumen del sistema: kernel, escritorio, hardware y más. |
dmesg |
Consultar los mensajes del kernel, útiles para detectar errores de hardware o drivers. |
uptime |
Ver cuánto tiempo lleva encendido el sistema y su carga media. |
shutdown, poweroff |
Apagar, reiniciar o suspender el equipo de forma controlada. |
poweroff sobre un equipo al que no podrás volver a llegar es una de las formas más rápidas de quedarte fuera.
Gestión de paquetes
| Gestor | Distribuciones |
|---|---|
apt, nala |
Debian, Ubuntu y derivadas. nala es una interfaz más cuidada para APT. |
dnf, rpm |
Fedora, RHEL, CentOS y similares. dnf sustituye a yum con mejor rendimiento. |
pacman |
Arch Linux y derivadas. |
Otras utilidades de interés
alias: crea atajos para comandos largos o repetitivos.history: lista los comandos ejecutados en la sesión, muy útil para revisar qué se hizo en un servidor.mysql: gestionar bases de datos MySQL o MariaDB desde la terminal.openssl: generar claves y certificados, y comprobar otros certificados.chroot: ejecutar procesos con un directorio como raíz, útil para rescatar y reparar sistemas.tailcombinado congrep: la pareja clásica para revisar logs.
Un diccionario en construcción
El propio voidNullse presenta como un trabajo en progreso: la página se va completando poco a poco con más comandos y enlaces a artículos completos. Es un buen motivo para guardarlo en favoritos y volver de vez en cuando.
man comando o comando --help para consultar sus opciones.
Fuentes y referencias
- Artículo original: «De la A a la Z: Los comandos de GNU/Linux», de Don T3rr0rZ0n3 en voidNull
- voidNull: SysAdmin, Terminal y GNU/Linux
- GNU Coreutils
Apoya el canal GENBYTE
Suscríbete al canal de YouTube
Suscríbete a la newsletter semanal
Invítame a un Ko-fi
[email protected]
