🐧 Línea de comandos de Linux
Comandos básicos y avanzados para navegación, archivos, procesos, redes, monitoreo, paquetes y automatización. Adecuado para flujos de trabajo DevOps.
🔹 Comandos básicos
Comando |
Ejemplo |
Descripción |
|---|---|---|
cat |
Mostrar contenido de archivos o concatenar varios archivos | |
cat file.txt |
Ver contenido de un archivo |
|
cat file1 file2 |
Concatenar y mostrar dos archivos |
|
cat file1 file2 > merged.txt |
Concatenar archivos y guardar en un nuevo archivo |
|
cd |
Cambiar el directorio de trabajo actual | |
cd /etc |
Ir a la ruta absoluta |
|
cd ~ |
Ir al directorio personal |
|
cd .. |
Subir un nivel |
|
cd - |
Volver al directorio anterior |
|
clear |
Limpiar la pantalla de la terminal | |
cp |
Copiar archivos y directorios | |
cp file1.txt file2.txt |
Copiar un archivo con un nuevo nombre |
|
cp -r dir1 dir2 |
Copiar un directorio de forma recursiva |
|
cp -i file.txt /tmp/ |
Copiar con confirmación antes de sobrescribir |
|
echo |
Imprimir una cadena o variable de entorno | |
echo "Hello, World!" |
Imprimir una cadena simple |
|
echo $HOME |
Mostrar la ruta del directorio personal |
|
echo -e "1\t2\n3" |
Interpretar secuencias de escape ( ) |
|
history |
Mostrar el historial de comandos | |
id |
Mostrar UID, GID y grupos del usuario actual | |
ls |
Listar archivos y directorios | |
ls -l |
Listado largo con permisos y propietarios |
|
ls -a |
Mostrar archivos ocultos |
|
ls -lh |
Tamaños legibles por humanos |
|
mkdir |
Crear directorios | |
mkdir folder |
Crear un solo directorio |
|
mkdir -p a/b/c |
Crear directorios anidados |
|
mkdir dir{1,2,3} |
Crear múltiples directorios a la vez |
|
mv |
Mover o renombrar archivos/directorios | |
mv oldname.txt newname.txt |
Renombrar un archivo |
|
mv file.txt /path/to/dir/ |
Mover un archivo a otro directorio |
|
mv *.txt archive/ |
Mover todos los archivos |
|
pwd |
Mostrar el directorio de trabajo actual | |
pwd -P |
Mostrar la ruta física (sin symlinks) |
|
cd /tmp && pwd |
Mostrar la ruta después de cambiar a |
|
rm |
Eliminar archivos o directorios | |
rm file.txt |
Borrar un archivo |
|
rm -i file.txt |
Borrar un archivo con confirmación |
|
rm -r folder/ |
Borrar recursivamente un directorio |
|
rm -rf folder/ |
Forzar borrado sin confirmación |
|
rmdir |
Eliminar un directorio vacío | |
rmdir emptydir |
Eliminar el directorio |
|
touch |
Crear archivos vacíos o actualizar la hora de modificación | |
touch newfile.txt |
Crear un nuevo archivo vacío si no existe |
|
touch a b c |
Crear múltiples archivos a la vez |
|
touch -c file.txt |
Actualizar la hora sin crear archivo si no existe |
|
whereis |
Localizar el binario, código fuente y páginas man de un comando | |
whereis ls |
Encontrar ubicaciones para |
|
whereis bash |
Mostrar rutas del binario y documentación de Bash |
|
whereis -b bash |
Buscar solo el binario |
|
which |
Mostrar la ruta del ejecutable de un comando | |
which python3 |
Ruta de |
|
which grep |
Ruta de |
|
which --skip-alias ls |
Omitir alias durante la búsqueda |
|
whoami |
Imprimir el nombre de usuario efectivo |
🔸 Nivel intermedio
Comando |
Ejemplo |
Descripción |
|---|---|---|
chmod |
Cambiar permisos de archivos o directorios | |
chmod 755 file |
Asignar permisos con notación octal (ej. 755) |
|
chmod +x script.sh |
Agregar permiso de ejecución a un script |
|
chmod -R 644 dir/ |
Asignar permisos recursivamente en un directorio |
|
chown |
Cambiar propietario y grupo de un archivo | |
chown user file |
Cambiar el propietario de un archivo |
|
chown user:group file |
Cambiar propietario y grupo |
|
chown -R user:group dir/ |
Cambiar propietario y grupo de forma recursiva |
|
curl |
Transferir datos desde/hacia un servidor (HTTP, HTTPS, etc.) | |
curl -I https://example.com |
Enviar una petición HEAD (solo encabezados) |
|
curl -O https://example.com/file.txt |
Descargar un archivo y mantener su nombre |
|
curl -d "a=1&b=2" -X POST URL |
Enviar una petición POST con datos de formulario |
|
df |
Reportar uso de espacio en disco de sistemas de archivos | |
df -h |
Tamaños legibles por humanos |
|
df /home |
Uso de un punto de montaje específico |
|
df -T |
Mostrar tipos de sistemas de archivos |
|
diff |
Comparar archivos o directorios | |
diff file1 file2 |
Comparar dos archivos |
|
diff -u old.c new.c |
Diff unificado (estilo patch) |
|
diff -r dir1 dir2 |
Comparación recursiva de directorios |
|
du |
Estimar el uso de espacio de archivos y directorios | |
du -sh * |
Mostrar tamaño de elementos en el directorio actual |
|
du -h file.txt |
Mostrar tamaño de un solo archivo |
|
du -sh --max-depth=1 /var |
Resumir tamaños de subdirectorios de primer nivel |
|
find |
Buscar archivos/directorios por nombre, tamaño, tiempo, etc. | |
find . -name "*.log" |
Encontrar todos los archivos |
|
find / -type f -size +100M |
Encontrar archivos mayores de 100 MB |
|
find . -mtime -1 |
Archivos modificados en el último día |
|
free |
Mostrar memoria libre y usada | |
free -h |
Unidades legibles por humanos |
|
free -m |
Mostrar valores en MB |
|
watch -n 2 free -h |
Refrescar la salida cada 2 segundos |
|
grep |
Buscar texto usando patrones (expresiones regulares) | |
grep "error" logfile |
Buscar líneas que contengan |
|
grep -r "error" /var/log |
Búsqueda recursiva en un directorio |
|
grep -i "fail" file |
Búsqueda sin distinguir mayúsculas/minúsculas |
|
head |
Mostrar las primeras líneas de un archivo | |
head -n 10 file |
Primeras 10 líneas |
|
head -n 20 file.txt |
Primeras 20 líneas |
|
head -c 100 file |
Primeros 100 bytes |
|
hostname |
Mostrar o establecer el nombre del host del sistema | |
hostname newname |
Asignar nombre de host temporal hasta reinicio |
|
hostname -I |
Mostrar direcciones IP |
|
kill |
Enviar señales a procesos | |
kill -9 1234 |
Matar un proceso por PID |
|
kill -TERM 1234 |
Terminar con SIGTERM de forma ordenada |
|
pkill -f python |
Matar procesos que coincidan con un patrón |
|
ping |
Verificar conectividad de red con peticiones ICMP | |
ping 8.8.8.8 |
Hacer ping a una dirección |
|
ping -c 4 ya.ru |
Enviar 4 paquetes |
|
ping -i 2 1.1.1.1 |
Definir intervalo de 2 segundos |
|
ps |
Mostrar estado de procesos | |
ps aux |
Listar todos los procesos |
|
ps -ef | grep nginx |
Filtrar por nombre usando |
|
ps -u $USER |
Procesos del usuario actual |
|
rsync |
Transferencia incremental rápida de archivos | |
rsync -av src/ dst/ |
Sincronizar directorios localmente |
|
rsync -avz user@host:/src /dst |
Sincronizar con un host remoto vía SSH |
|
rsync --delete src/ dst/ |
Eliminar archivos en destino que no están en origen |
|
scp |
Copia segura (copiar archivos de forma remota) | |
scp file user@host:/path |
Copiar un archivo a un host remoto |
|
scp user@host:/file.txt . |
Copiar un archivo desde un host remoto |
|
scp -r dir user@host:/path |
Copiar un directorio de forma recursiva |
|
sort |
Ordenar líneas de texto | |
sort file.txt |
Orden alfabético |
|
sort -r file.txt |
Orden inverso |
|
sort -n numbers.txt |
Orden numérico |
|
tail |
Mostrar la última parte de archivos; seguir cambios | |
tail -f logfile.log |
Seguir un log en tiempo real |
|
tail -n 20 file.txt |
Mostrar las últimas 20 líneas |
|
tail -c 100 file.txt |
Mostrar los últimos 100 bytes |
|
tar |
Crear, listar o extraer archivos tar | |
tar -czf archive.tgz dir/ |
Crear un archivo comprimido |
|
tar -xzf archive.tgz |
Extraer un archivo |
|
tar -tf archive.tgz |
Listar contenido de un archivo |
|
tee |
Leer de stdin y escribir en stdout y archivos | |
echo "test" | tee out.txt |
Escribir salida en |
|
ls | tee list.txt |
Guardar salida de |
|
command | tee -a log.txt |
Añadir salida al final de |
|
top |
Mostrar tareas de Linux (visor de procesos interactivo) | |
top |
Iniciar top |
|
htop |
Visor interactivo alternativo (htop) |
|
top -o %MEM |
Ordenar por uso de memoria |
|
uptime |
Mostrar cuánto tiempo lleva encendido el sistema | |
uptime -p |
Tiempo de actividad legible |
|
uptime -s |
Hora de arranque del sistema |
|
wget |
Descargador de red no interactivo | |
wget https://site.com/file.zip |
Descargar un archivo por URL |
|
wget -c file.zip |
Reanudar una descarga interrumpida |
|
wget -O saved.txt URL |
Guardar con un nombre diferente |
|
wc |
Contar líneas, palabras y bytes de archivos | |
wc -l file |
Contar líneas |
|
wc -w file |
Contar palabras |
|
wc -m file |
Contar caracteres |
|
uniq |
Reportar o filtrar líneas repetidas (duplicados adyacentes) | |
uniq file.txt |
Eliminar duplicados adyacentes |
|
sort file | uniq |
Eliminar duplicados después de ordenar |
|
sort file | uniq -c |
Contar ocurrencias de cada línea |
|
yes |
Imprimir una cadena repetidamente hasta detener; útil en scripts | |
yes "y" | command |
Responder siempre “y” a los avisos |
|
yes | rm -i * |
Auto-confirmar borrados interactivos |
|
yes no | command |
Responder “no” a los avisos |
🔧 Comandos avanzados
Comando |
Ejemplo |
Descripción |
|---|---|---|
at |
Programar un comando de una sola vez para ejecutarse en un momento dado | |
at now + 1 minute |
Ejecutar un comando un minuto desde ahora |
|
atq |
Listar trabajos pendientes |
|
atrm |
Eliminar un trabajo pendiente |
|
awk |
Lenguaje de escaneo de patrones y procesamiento | |
awk '{print $1}' file |
Imprimir la primera columna |
|
ps aux | awk '$3 > 50' |
Filtrar procesos por uso de CPU |
|
cat file.txt | awk '{print $2}' |
Imprimir el segundo campo de cada línea |
|
awk '/error/ {print $0}' logfile |
Imprimir líneas que coincidan con un patrón |
|
crontab |
Instalar, listar o eliminar trabajos cron por usuario | |
crontab -e |
Editar el crontab del usuario actual |
|
crontab -l |
Listar trabajos cron |
|
crontab -r |
Eliminar el crontab del usuario actual |
|
cut |
Eliminar o seleccionar secciones de cada línea de archivos | |
cut -d':' -f1 /etc/passwd |
Imprimir nombres de usuario de |
|
echo "a:b:c" | cut -d':' -f2 |
Cortar el segundo campo usando ‘:’ como delimitador |
|
cut -c1-5 filename |
Seleccionar caracteres por posición |
|
df |
Reportar el uso de espacio en disco del sistema de archivos | |
df -h |
Tamaños legibles por humanos |
|
df -T |
Mostrar tipos de sistemas de archivos |
|
df /home |
Uso para el directorio personal |
|
env |
Ejecutar un comando en un entorno modificado o mostrar env | |
env | grep PATH |
Mostrar entradas de PATH |
|
env -i bash |
Iniciar una shell limpia con entorno vacío |
|
export |
Establecer variables de entorno para la shell/sesión actual | |
export VAR=value |
Asignar una variable para esta shell |
|
export PATH=$PATH:/new/path |
Agregar un directorio al PATH |
|
export -p |
Listar variables exportadas |
|
free |
Mostrar uso de memoria | |
free -m |
Mostrar en MB |
|
free -h |
Unidades legibles por humanos |
|
free -s 5 |
Muestrear cada 5 segundos |
|
hostnamectl |
Consultar y cambiar el nombre de host del sistema y configuraciones relacionadas | |
hostnamectl status |
Mostrar estado del nombre de host |
|
hostnamectl set-hostname newname |
Asignar un nuevo nombre de host estático |
|
ifconfig / ip |
Herramientas IP para ver/gestionar interfaces y direcciones | |
ifconfig |
Mostrar interfaces de red (legacy) |
|
ip a |
Mostrar direcciones con |
|
ip link set eth0 up |
Activar una interfaz |
|
iostat |
Reportar estadísticas de CPU e I/O | |
iostat -x 2 |
Estadísticas extendidas cada 2 segundos |
|
iostat -d 5 3 |
Estadísticas de dispositivos (intervalo de 5s, 3 reportes) |
|
iptables |
Herramienta de administración para filtrado de paquetes IPv4 y NAT | |
iptables -L |
Listar reglas actuales |
|
iptables -A INPUT -p tcp --dport 22 -j ACCEPT |
Permitir SSH entrante en el puerto 22 |
|
iptables -F |
Vaciar todas las reglas |
|
journalctl |
Consultar el journal de systemd | |
journalctl -xe |
Mostrar errores recientes con contexto |
|
journalctl -u nginx.service |
Mostrar logs de un servicio |
|
journalctl --since "2 hours ago" |
Mostrar logs desde un tiempo relativo |
|
ln |
Crear enlaces entre archivos | |
ln -s target link |
Crear un enlace simbólico |
|
ln file.txt backup.txt |
Crear un enlace duro |
|
ln -sf target link |
Recrear un enlace simbólico forzadamente |
|
sed |
Editor de flujo para filtrar y transformar texto | |
sed 's/old/new/g' file |
Reemplazar una cadena globalmente |
|
sed -n '1,5p' file |
Imprimir solo un rango de líneas |
|
sed '/pattern/d' file |
Eliminar líneas que coincidan |
|
systemctl |
Controlar el sistema y gestor de servicios systemd | |
systemctl status nginx |
Mostrar estado de un servicio |
|
systemctl start nginx |
Iniciar un servicio |
|
systemctl enable nginx |
Habilitar un servicio al arranque |
|
tr |
Traducir o eliminar caracteres | |
tr a-z A-Z |
Convertir minúsculas a mayúsculas |
|
echo "hello" | tr 'h' 'H' |
Reemplazar un carácter |
|
echo "abc123" | tr -d '0-9' |
Eliminar dígitos |
|
type |
Describir cómo se interpretaría un nombre en la shell | |
type ls |
Mostrar cómo se resuelve |
|
type cd |
Mostrar cómo se resuelve |
|
type python3 |
Mostrar cómo se resuelve |
|
ulimit |
Obtener o establecer límites de recursos de procesos de usuario | |
ulimit -n |
Mostrar máximo de archivos abiertos |
|
ulimit -c unlimited |
Habilitar core dumps |
|
ulimit -u 4096 |
Limitar número de procesos de usuario |
|
uptime |
Mostrar tiempo de actividad y carga promedio del sistema | |
uptime -p |
Tiempo de actividad legible |
|
uptime -s |
Mostrar hora de arranque |
|
xargs |
Construir y ejecutar comandos desde la entrada estándar | |
xargs -n 1 echo |
Imprimir cada argumento en una línea separada |
|
echo "a b c" | xargs -n 1 |
Dividir palabras en argumentos separados |
|
find . -name '*.txt' | xargs rm |
Buscar archivos y eliminarlos con xargs |
🌐 Comandos de red
Comando |
Ejemplo |
Descripción |
|---|---|---|
curl |
Transferir datos hacia/desde servidores | |
curl -X POST -d "a=1" URL |
Petición POST con datos de formulario |
|
curl -I URL |
Obtener solo encabezados |
|
curl -o file.html URL |
Descargar y guardar en un archivo |
|
dig |
Utilidad de consulta DNS | |
dig openai.com |
Consultar registros A |
|
dig +short openai.com |
Respuesta corta |
|
dig @8.8.8.8 openai.com |
Usar un servidor DNS específico |
|
ftp |
Cliente de Protocolo de Transferencia de Archivos (FTP) | |
ftp host |
Conectarse a un servidor FTP |
|
ftp -n host |
Conectarse sin inicio de sesión automático |
|
ftp> get file.txt |
Descargar un archivo en una sesión FTP |
|
ip address |
Mostrar/manipular direcciones IP | |
ip addr show eth0 |
Mostrar info de direcciones para |
|
ip addr |
Listar todas las direcciones |
|
ip link |
Mostrar/manipular dispositivos de red | |
ip link show |
Mostrar enlaces de red |
|
ip link set eth0 up |
Activar una interfaz |
|
ip route |
Mostrar/manipular la tabla de enrutamiento IP | |
ip route list |
Listar tabla de enrutamiento |
|
ip route add default via 192.168.1.1 |
Agregar una ruta predeterminada |
|
nc |
Conexiones TCP/UDP arbitrarias y escucha | |
nc -zv host 22 |
Escanear puertos de un host |
|
nc -l 1234 |
Escuchar en un puerto TCP |
|
nc host 1234 < file |
Enviar un archivo a un puerto remoto |
|
nmap |
Herramienta de exploración de red y escáner de seguridad/puertos | |
nmap -sP 192.168.1.0/24 |
Escaneo de ping en una subred |
|
nmap -sV 192.168.1.1 |
Detección de servicios/versiones |
|
nmap -O 192.168.1.1 |
Detección de sistema operativo |
|
nslookup |
Consultar servidores de nombres de dominio en Internet | |
nslookup google.com |
Consultar un nombre de dominio |
|
nslookup 8.8.8.8 |
Búsqueda inversa para una IP |
|
ssh |
Cliente de inicio de sesión remoto OpenSSH | |
ssh user@host |
Conectarse a un host |
|
ssh -p 2222 user@host |
Conectarse usando un puerto no predeterminado |
|
ssh -i ~/.ssh/id_rsa user@host |
Iniciar sesión con una clave privada específica |
|
ss |
Utilidad para investigar sockets | |
ss -tuln |
Listar puertos TCP/UDP en escucha |
|
ss -s |
Estadísticas de resumen |
|
ss -l |
Listar sockets en escucha |
|
telnet |
Interfaz de usuario para el protocolo TELNET | |
telnet host 80 |
Conectarse a un host en el puerto 80 |
|
telnet example.com 443 |
Conectarse al puerto 443 |
|
telnet localhost 25 |
Conectarse a SMTP local |
|
traceroute |
Rastrear la ruta hacia un host de red | |
traceroute 8.8.8.8 |
Rastrear ruta a una IP |
|
traceroute -m 15 8.8.8.8 |
Limitar saltos máximos |
|
wget |
Recuperar archivos de la web | |
wget -O file.txt URL |
Guardar salida en un archivo |
|
wget URL |
Descargar en el directorio actual |
|
wget -c URL |
Continuar una descarga parcial |
🔍 Búsqueda y gestión de archivos
Comando |
Ejemplo |
Descripción |
|---|---|---|
basename |
Eliminar directorio y sufijo de nombres de archivo | |
basename /path/to/file |
Imprimir el nombre del archivo desde una ruta |
|
basename /path/to/file .txt |
Eliminar un sufijo del nombre |
|
dirname |
Eliminar el último componente de una ruta | |
dirname /path/to/file |
Mostrar la parte de directorio de la ruta |
|
dirname /etc/passwd |
Mostrar el padre de |
|
du |
Estimar el uso de espacio de archivos | |
du -sh folder/ |
Mostrar tamaño de un directorio |
|
du -h * |
Mostrar tamaño de elementos en el directorio actual |
|
du -c folder1 folder2 |
Tamaño acumulado de múltiples directorios |
|
file |
Determinar tipo de archivo | |
file some.bin |
Detectar tipo de archivo |
|
file * |
Detectar tipos de todos los archivos en un directorio |
|
file -i file.txt |
Mostrar tipo MIME |
|
find |
Buscar archivos | |
find /path -type f -name "*.sh" |
Buscar scripts de shell por nombre |
|
find . -size +10M |
Buscar archivos mayores de 10 MB |
|
find /tmp -mtime -1 |
Buscar archivos modificados en el último día |
|
locate |
Buscar archivos por nombre usando base de datos | |
locate filename |
Localizar un nombre de archivo |
|
locate *.conf |
Búsqueda con comodines |
|
locate -i README |
Búsqueda sin distinguir mayúsculas/minúsculas |
|
realpath |
Imprimir la ruta absoluta resuelta | |
realpath file |
Resolver la ruta de un archivo |
|
realpath ../relative/path |
Resolver una ruta relativa |
|
stat |
Mostrar estado de archivo o sistema de archivos | |
stat file |
Mostrar estado detallado de archivo |
|
stat -c %s file |
Imprimir solo el tamaño del archivo |
|
stat -f file |
Mostrar estado del sistema de archivos |
|
tree |
Listar contenidos de directorios en formato de árbol | |
tree |
Imprimir árbol de directorio |
|
tree -L 2 |
Limitar la profundidad de visualización |
|
tree -a |
Incluir archivos ocultos |
📊 Monitoreo del sistema
Comando |
Ejemplo |
Descripción |
|---|---|---|
dmesg |
Imprimir o controlar el buffer de anillo del kernel | |
dmesg | tail |
Mostrar los últimos mensajes del kernel |
|
dmesg | grep usb |
Filtrar mensajes de USB |
|
free |
Mostrar uso de memoria | |
free -h |
Unidades legibles por humanos |
|
free -m |
Mostrar en MB |
|
htop |
Visor de procesos interactivo | |
htop |
Ejecutar |
|
iotop |
Mostrar uso de I/O por procesos | |
iotop |
Ejecutar |
|
iotop -o |
Mostrar solo procesos que hacen I/O |
|
lsof |
Listar archivos abiertos | |
lsof -i :80 |
Mostrar procesos usando el puerto 80 |
|
lsof -u username |
Mostrar archivos abiertos por un usuario |
|
uptime |
Mostrar tiempo de actividad del sistema y carga promedio | |
vmstat |
Reportar estadísticas de memoria virtual | |
vmstat 1 |
Refrescar cada 1 segundo |
|
vmstat 5 3 |
Intervalo de cinco segundos, 3 reportes |
|
watch |
Ejecutar un programa periódicamente, mostrando salida | |
watch -n 1 df -h |
Vigilar uso de disco |
|
watch -d free -h |
Resaltar diferencias y vigilar memoria |
📦 Gestión de paquetes
Comando |
Ejemplo |
Descripción |
|---|---|---|
apt |
Gestor de paquetes APT (Debian/Ubuntu) | |
apt install curl |
Instalar un paquete |
|
apt remove curl |
Eliminar un paquete |
|
apt update && apt upgrade |
Actualizar listas y mejorar paquetes |
|
dnf |
Dandified YUM (familia Fedora/RHEL) | |
dnf install curl |
Instalar un paquete |
|
dnf upgrade |
Actualizar paquetes |
|
rpm |
Gestor de paquetes RPM | |
rpm -ivh package.rpm |
Instalar un paquete RPM |
|
rpm -e package |
Eliminar (desinstalar) un paquete |
|
snap |
Gestor de paquetes Snappy | |
snap install app |
Instalar un snap |
|
snap remove app |
Eliminar un snap |
|
yum |
Yellowdog Updater Modified (RHEL/CentOS) | |
yum install curl |
Instalar un paquete |
|
yum remove curl |
Eliminar un paquete |
💽 Sistemas de archivos
Comando |
Ejemplo |
Descripción |
|---|---|---|
blkid |
Localizar/imprimir atributos de dispositivos de bloque | |
blkid |
Listar dispositivos de bloque y atributos |
|
df |
Reportar uso de espacio en disco de sistemas de archivos | |
df -Th |
Tamaños legibles por humanos por tipo |
|
fsck |
Verificar y reparar un sistema de archivos Linux | |
fsck /dev/sda1 |
Verificar un dispositivo |
|
lsblk |
Listar información de dispositivos de bloque | |
lsblk |
Listar dispositivos en árbol |
|
mkfs |
Construir un sistema de archivos Linux | |
mkfs.ext4 /dev/sdb1 |
Crear un sistema de archivos ext4 |
|
mount |
Montar un sistema de archivos | |
mount /dev/sdb1 /mnt |
Montar un dispositivo en |
|
mount | grep /mnt |
Mostrar sistemas montados filtrados por ruta |
|
parted |
Programa de manipulación de particiones | |
parted /dev/sdb |
Abrir un disco para particionar |
|
umount |
Desmontar sistemas de archivos | |
umount /mnt |
Desmontar un punto de montaje |
🤖 Scripts y automatización
Comando |
Ejemplo |
Descripción |
|---|---|---|
alias |
Definir o mostrar alias de shell | |
alias ll='ls -la' |
Crear un alias útil |
|
alias |
Listar alias definidos |
|
bash / sh |
Ejecutar scripts de shell | |
bash script.sh |
Ejecutar un script con Bash |
|
sh script.sh |
Ejecutar un script con |
|
crontab |
Tablas cron por usuario | |
crontab -e |
Editar el crontab del usuario actual |
|
read |
Solicitar entrada del usuario en scripts de shell | |
read name |
Leer en una variable |
|
set |
Establecer opciones de shell/parámetros posicionales | |
set -e |
Salir en el primer error |
|
source |
Leer y ejecutar comandos desde un archivo en la shell actual | |
source ~/.bashrc |
Recargar configuración de shell |
|
trap |
Atrapar señales y ejecutar comandos | |
trap "echo 'exit'" EXIT |
Ejecutar un comando al salir de la shell |
🛠 Desarrollo y depuración
Comando |
Ejemplo |
Descripción |
|---|---|---|
gcc |
Compilador GNU C | |
gcc main.c -o app |
Compilar un archivo fuente en C |
|
gdb |
Depurador GNU | |
gdb ./app |
Depurar un binario compilado |
|
git |
Sistema distribuido de control de versiones | |
git status |
Mostrar estado del árbol de trabajo |
|
git commit -m "msg" |
Hacer commit con mensaje |
|
ltrace |
Trazador de llamadas a librerías | |
ltrace ./app |
Trazar llamadas de librería de un binario |
|
make |
Utilidad para mantener grupos de programas | |
make |
Construir según Makefile |
|
shellcheck |
Análisis estático para scripts de shell | |
shellcheck script.sh |
Revisar un script de shell |
|
strace |
Trazar llamadas al sistema y señales | |
strace ./app |
Trazar syscalls de un programa |
|
valgrind |
Framework de instrumentación para herramientas de análisis dinámico | |
valgrind ./app |
Ejecutar un programa bajo Valgrind |
|
vim / nano |
Editores de texto en línea de comandos | |
vim file.sh |
Editar con Vim |
|
nano file.sh |
Editar con Nano |
📌 Misceláneo
Comando |
Ejemplo |
Descripción |
|---|---|---|
cal |
Mostrar un calendario | |
cal 2025 |
Mostrar calendario anual |
|
cal 08 2025 |
Mostrar un mes específico |
|
date |
Mostrar o establecer la fecha y hora del sistema | |
date +%T |
Imprimir hora actual (HH:MM:SS) |
|
date -d "next friday" |
Imprimir fecha para un día relativo |
|
factor |
Factorizar enteros | |
factor 100 |
Factorizar un número |
|
man |
Formatear y mostrar páginas de manual en línea | |
man tar |
Abrir una página man |
|
man -k copy |
Buscar manuales por palabra clave |
|
man 5 passwd |
Abrir una sección específica del manual |
|
seq |
Imprimir secuencias de números | |
seq 1 5 |
Contar del 1 al 5 |
|
seq 1 2 9 |
Contar con paso |
|
seq -s ',' 1 5 |
Unir números con un separador personalizado |
|
yes |
Imprimir una cadena repetidamente hasta detenerse | |
yes | rm -r dir |
Auto-confirmar un borrado recursivo |
📚 Recursos adicionales
📘 páginas man - manuales detallados para comandos:
man ls
man rm📙 TLDR - ejemplos concisos de uso de comandos populares:
🧠 Consejo: Instala tldr para ayuda en estilo hoja de referencia:
sudo apt install tldr # o: npm install -g tldr
tldr tar # ejemplo de un resumen corto para el comando tar🌐 Enlaces útiles
Páginas man de Linux en línea — manuales oficiales, buscables por nombre de comando:
https://man7.org/linux/man-pages/
Páginas man simplificadas y comunitarias — ayuda impulsada por la comunidad con ejemplos prácticos:
https://tldr.sh/