Empecemos el recorrido por algunos comandos simples y de uso cotidiano en Linux:
| Comando | Descripción |
|---|---|
exit |
Cierra la consola |
clear |
Limpia la pantalla de la consola |
echo mensaje |
Muestra un mensaje en la terminal [1] |
pwd |
(print working directory) Muestra la ruta absoluta del directorio actual |
history |
Muestra un listado de los comandos utilizados |
history -c |
(-clear) Borra el listado de comandos utilizados |
whatis comando |
(what is) Muestra una descripción del comando |
whereis programa |
(where is?) Busca la ubicación de un archivo ejecutable. Si están disponibles, retorna también su fuente y manual |
compgen -c comando |
(-commands) Muestra un listado de todos los comandos que comiencen con comando |
whoami |
(who am I) Muestra el usuario actual |
comando --help |
Obtener ayuda sobre un comando |
man comando |
(manual) Muestra un manual sobre determinado comando del sistema. Se sale con la tecla Q (quit) |
man -k palabra |
(-keyword) Busca determinada palabra en el manual del sistema. Si aparece más de una vez, se avanza con la tecla N (next). También se puede buscar una palabra dentro del manual con / palabra |
comando1 ; comando2 |
Ejecuta el comando1 y luego el comando2 |
comando1 && comando2 |
Ejecuta el comando2 cuando el comando1 finaliza exitosamente |
comando1 || comando2 |
Ejecuta el comando2 sólo si el comando1 falla |
comando1 | comando2 |
Ejecuta el comando1 y envía la salida como entrada del comando2 |
$_ |
Es un comodín que toma el argumento del comando anterior |
!! |
Repite el último comando. ATENCIÓN: Cuidado al escribir ! en una cadena de texto, ya que puede generar un error. Conviene usar el código de escape \! en ese caso |
alias nombre="comando" |
Permite definir alias temporales en la sesión. Al crear un alias, se le indica a la terminal que sustituya una palabra por un comando. Por ejemplo: alias manual="man whoami" |
compgen -a |
(-alias) Muestra un listado de todos los alias |
unalias nombre |
Elimina el alias definido |
date |
Muestra la fecha y hora actual |
date +%H:%M:%S |
Muestra únicamente la hora actual (%H) con sus minutos (%M) y segundos (%S) |
compgen -v |
(-variables) Muestra un listado de todas las variables de entorno |
su usuario |
(superuser) Permite cambiar de usuario |
sudo su |
(superuser do) Permite actuar como usuario root, pidiendo la contraseña de usuario |
passwd |
(password) Permite cambiar la contraseña: primero pide la contraseña actual y luego la nueva |
dir |
(directory) Lista brevemente el contenido del directorio actual |
dir -1 |
(-one) Lista brevemente el contenido del directorio actual, mostrando un elemento por línea |
dir -l |
(-long) Lista el contenido del directorio actual, mostrando un elemento por línea con sus detalles |
du -h ruta |
(disk usage -human) Muestra el tamaño de los subdirectorios de la ruta indicada, en formato legible (Kb, Mb, etc.) |
ls |
(list) Lista los subdirectorios y archivos del directorio actual |
ls ruta |
Muestra los subdirectorios y archivos de una ruta específica |
ls -1 |
(-one) Lista brevemente el contenido del directorio actual, mostrando un elemento por línea |
ls -l |
(-long) Lista el contenido del directorio actual, mostrando un elemento por línea con sus detalles |
ls -s |
(-size) Muestra el tamaño de los elementos del directorio actual |
ls -S |
(-Sort) Muestra los elementos del directorio actual y los ordena por tamaño descendiente |
ls -a |
(-all) Muestra todos los elementos (incluso los ocultos) del directorio actual [2] |
ls -la |
Muestra todos los elementos (incluso los ocultos) del directorio actual, con sus detalles |
ls -R |
(-Recursive) Muestra todos los elementos de los subdirectorios del directorio actual |
ls -r |
(-reverse) Invierte el orden del listado |
ls *.extensión |
Muestra únicamente aquellos archivos con una determinada extensión [3] |
ls ab* |
Muestra únicamente aquellos archivos cuyo nombre empieza con "ab" |
ls a??? |
Muestra únicamente aquellos archivos cuyo nombre tiene cuatro caracteres y empieza con "a" [4] |
cd ruta |
(change directory) Cambia a la ruta indicada, sea absoluta o relativa |
cd |
Vuelve al directorio de inicio (home) |
cd .. |
Sube un nivel en los directorios. ../.. sube dos niveles, ../../.. sube tres y así sucesivamente |
cd ../directorio |
Sube un nivel y enseguida ingresa a otro subdirectorio |
cd - |
Muestra en pantalla el directorio anterior y regresa a él |
./archivobash archivo |
Ejecuta un archivo |
locate archivo |
Busca un archivo según su nombre |
find ruta -name nombre -type tipo |
Busca un archivo o directorio con cierto nombre dentro de un directorio dado. La opción -type especifica el tipo: d para directorios, f para archivos |
file archivo |
Muestra una descripción breve del archivo |
stat archivo |
Muestra información detallada sobre un archivo, como su nombre, su tamaño, su fecha de creación, etc. |
grep expresión archivo |
Busca una expresión determinada en cierto archivo |
grep -i expresión archivo |
(-ignore-case) Busca una expresión determinada en cierto archivo ignorando mayúsculas o minúsculas |
reboot |
Reinicia la computadora |
shutdown hh:mm |
Apaga la computadora a la hora señalada (en formato de 24 h) |
shutdown now |
Apaga la computadora inmediatamente |
shutdown -c |
Cancela el apagado programado |
mount ruta_unidad ruta_destino |
Monta una unidad (disco duro, USB, tarjeta de memoria, etc.) en un directorio determinado |
free |
Muestra el uso de memoria RAM |
df |
(disk free) Muestra una lista detallada de todas las unidades |
df -h |
(-human) Muestra una lista detallada de todas las unidades con sus tamaños en megabytes, gigabytes, etc. |
df -T |
(-Type) Muestra todas las unidades con su sistema de archivos (ext4, FAT32, NTFS, etc.) |
uname -a |
(Unix name -all) Muestra la información del sistema operativo |
neofetch |
Muestra la información del sistema con un logotipo en formato ASCII de la distribución de Linux |
wget url |
(World Wide Web get) Guarda un contenido obtenido desde Internet |
ping urlping ip |
Prueba la conexión de red a un dominio o a una dirección IP |
uptime |
Muestra el tiempo que lleva encendida la computadora |
w |
(w minúscula) Muestra información sobre los usuarios que están conectados actualmente |
hostname |
Muestra el nombre de la red |
hostname -I |
(-IP) Muestra la IP de la red |
[1] Puedes utilizar la opción
-ey el código de escape\npara generar saltos de línea. Por ejemplo:echo -e "Opción A\nOpción B\nOpción C"se mostrará como:
Opción A Opción B Opción C[2] Los nombres de los archivos y directorios ocultos comienzan con un punto (
.), así que si deseas ocultar un archivo o carpeta puedes agregárselo.[3]El asterisco (
*) es un comodín que reemplaza a cero o más caracteres y se utiliza mayormente cuando se quiere indicar la totalidad de algo.[4] El signo de interrogación (
?) es un comodín que reemplaza a un solo caracter.
Veamos en más detalle cómo funcionan algunos de ellos.
Como el nombre lo indica, estos operadores permiten encadenar varios comandos en una misma línea.
Con el operador ; se ejecuta un comando a continuación del otro. Por ejemplo:
whoami ; date # javier # lun 30 mar 2026 15:03:48 -03
El operador && indica que un comando se ejecutará a continuación de otro solamente si el primero es exitoso.
ls *.png && pwd # Si en la carpeta actual hay archivos con extensión PNG, se mostrará el listado y a continuación la ruta. Pero si no hay ninguno, marcará un error.
La barra vertical doble (||) indica que el segundo comando se ejecutará únicamente cuando el primero falle. Retomando el ejemplo anterior:
ls *.png || pwd # Supongamos que no existe ningún archivo PNG # Primero marcará el error del primer comando y luego se mostrará la ruta del directorio actual.
La barra vertical simple (|) es un operador que probablemente vayas a utilizar muy a menudo. Se ejecuta el primer comando y la salida se envía como entrada del segundo. A este encadenamiento se le conoce como pipe (tubería).
ls | wc -l # El primero devuelve una lista de todos los archivos y carpetas actuales y se pasa al segundo que cuenta cuántos son.
(Más adelante veremos en mayor detalle el comando wc).
El operador !! repite el comando que se ha ejecutado previamente. Ejemplo:
date +%H:%M # 16:02 !! # 16:02
En cambio, el operador $_ reemplaza al argumento del comando anterior. Por ejemplo:
whatis pwd man $_ # Muestra el manual de pwd
En Bash hay un conjunto de atajos de teclado que son muy útiles:
| Atajo | Descripción |
|---|---|
Tab |
Autocompleta nombres de archivos y comandos |
Flecha arriba / abajo |
Navega por el historial de comandos |
Ctrl + Shift + C |
Copia el texto seleccionado (equivalente a copiar con Ctrl + C) |
Ctrl + Shift + V |
Pega el texto copiado (equivalente a pegar con Ctrl + V) |
Ctrl + L |
Limpia la pantalla de la terminal |
Ctrl + C |
Cancela el comando que se está ejecutando |
Ctrl + Z |
Detiene el comando que se está ejecutando, dejándolo en segundo plano. Se retoma con fg |
Ctrl + A |
Desplaza el cursor al principio de la línea |
Ctrl + E |
Desplaza el cursor al final de la línea |
Ctrl + U |
Elimina todo el contenido de la línea |
Ctrl + K |
Elimina todo el contenido desde el cursor hasta el final de la línea |
Ctrl + R |
Busca comandos en el historial a medida que se va escribiendo |
Ctrl + W |
Elimina la palabra inmediatamente anterior al cursor |
Ctrl + S |
Congela la pantalla de la terminal y se reanuda con Ctrl + Q |
Alt + . |
Inserta el último argumento del comando anterior.
Por ejemplo, si primero se escribe whereis bash y luego se presiona Alt + ., se insertará bash. |
¡Hola! Soy [usuario] y actualmente estoy en la carpeta [directorio]".saludo que imprima por consola el mensaje "Hoy es: [fecha]". (Pista: utilizar comillas simples). Ejecutar ese mismo alias y luego borrarlo.txt en la carpeta actual.neofetch primero. Luego usar el comando whatis para mostrar su descripción.