31 Comandos de Linux Que Todo Usuario de Ubuntu Debería Conocer

Eso creé esta lista de comandos básicos pero esenciales de Linux que deberían serte útiles como usuario de Ubuntu.
Warp Terminal

Cuáles son los comandos esenciales de Ubuntu?

Los lectores habituales me han hecho esta pregunta varias veces, y he intentado evitar responderla.

¿Por qué? ¿No conozco los comandos de Ubuntu? No. Esa no es la razón. Es porque es difícil clasificarlos. Lo que es esencial para mí puede no serlo para ti.

Pero supongo que eso se aplica a todo y a todas las listas de aplicaciones recomendadas de nuestro portal.

Es por eso que finalmente cedí y creé esta lista de comandos básicos pero esenciales de Linux que deberían serte útiles como usuario de Ubuntu. Esto está más enfocado a usuarios de Ubuntu de escritorio, pero si usas Ubuntu como servidor, también deberían ayudarte. Los usuarios de Debian y otras distribuciones de Linux también podrían encontrarlo útil.

Comandos esenciales de Ubuntu

Cada comando que enumero aquí tiene múltiples opciones y varios usos. Si intento dar incluso los ejemplos más comunes de cada comando, se convertirá rápidamente en un libro de bolsillo de más de 10.000 palabras.

No entraré en detalles con ninguno de estos comandos. Enumeraré el propósito de cada comando con su sintaxis básica. Puedes leer más sobre el uso de estos comandos en sus tutoriales enlazados.

Lectura recomendada antes de empezar a seguir la lista:

Otra cosa. Aquí he utilizado más el término carpeta que el de directorio.

Una carpeta se llama directorio en Linux, y puede que a los puritanos no les guste esto. Sin embargo, creo que es más fácil de entender para los principiantes.

ls: Lista el contenido de una carpeta

Este es uno de los primeros comandos que aprende un nuevo usuario de Linux. Este comando te permite ver qué archivos y carpetas hay en tu carpeta actual.

ls

Puede utilizar la opción de listado largo ls -l para ver detalles como el tamaño del archivo, el permiso, la hora de modificación, etc. Puedes ordenar y controlar estas opciones si lo deseas.

ls -l

Lectura relacionada: ejemplos del comando ls

cd: Cambiar de directorio

Por defecto, empiezas en tu carpeta personal. A menudo necesitarás cambiar la carpeta y moverte a otra.

Por ejemplo, has descargado un archivo deb o un script. Ahora quieres ejecutarlo. Puedes hacerlo desde tu directorio de trabajo actual proporcionando la ruta completa, pero cambiar a esa ubicación facilita las cosas.

El comando cd significa cambiar directorio; con esto, puedes cambiar tu ubicación y moverte a otra.

En este punto, recomiendo encarecidamente leer sobre el concepto de rutas en Linux para que las cosas sean fáciles de entender mientras se navega a través de directorios en la línea de comandos de Linux.

Lectura recomendada: ejemplos del comando cd

cat: Leer un archivo de texto

Si quieres ver rápidamente el contenido de un archivo de texto en Linux, cat es el comando que debes utilizar. Muestra el contenido en la pantalla.

cat nombre_archivo

También puede utilizar el comando cat para crear nuevos archivos o añadir más texto a los archivos existentes.

less: Leer un archivo de texto grande

El comando cat es lo suficientemente bueno para ver archivos de texto pequeños. Pero no te recomiendo usar cat si tienes un archivo de texto enorme con cientos de líneas. Inundará tu pantalla con todo el texto, y tendrás dificultades con él.

Aquí es donde el comando less entra en escena. Cuando abres un archivo con less, lo abre en páginas. Puedes desplazarte arriba/abajo, buscar texto y mucho más.

Una vez que haya terminado de leer el fichero, puede salir de la vista reducida pulsando la tecla Q. Verás que no aparece nada en la pantalla. Tu pantalla estará limpia.

Lectura sugerida: ejemplos del comando less

touch: Crear nuevos archivos

Hay múltiples formas de crear nuevos archivos en la terminal de Linux. El comando cat que viste arriba también puede crear nuevos archivos.

Sin embargo, prefiero el comando touch para este propósito.

touch nuevo_nombre_de_archivo

Si lo utiliza con archivos existentes, se modificarán sus marcas de tiempo.

Lea también: Ejemplos del comando touch

mkdir: Crear nuevas carpetas

Si bien no existe un comando específico para crear nuevos archivos, hay un comando dedicado para crear nuevas carpetas (o directorios, como los llamamos en Linux).

mkdir nuevo_directorio

Lectura recomendada: Ejemplos del comando mkdir

cp: Copiar archivos y carpetas

Copiar archivos y carpetas en la línea de comandos es también una de las tareas más comunes con las que te encontrarás. El comando cp, abreviatura de copy, se utiliza para este propósito.

Imagina que tienes que modificar un archivo de configuración. Un movimiento inteligente será copiar el archivo con otro nombre. De esta forma, tendrás una copia de seguridad del fichero.

cp nombre_archivo_origen.txt nombre_archivo_destino.back

También puede utilizar el mismo comando cp para copiar directorios. Para ello, debe especificar la opción recursiva -r:

cp -r directorio ubicacion_destino

Lectura recomendada: Ejemplos del comando cp

mv: Cortar-pegar o renombrar archivos y carpetas

El comando mv significa 'mover'. Cuando copias un archivo a otra ubicación, éste permanece en su lugar original.

El comando mv mueve los archivos y carpetas a la otra ubicación. Es como cortar y pegar.

mv archivo.txt /otra/ubicación

También puede utilizar el comando mv para renombrar el archivo.

mv archivo.txt nuevo_archivo.txt

El mismo comando mv también mueve o renombra carpetas sin ninguna opción especial.

Lectura recomendada: Ejemplos del comando mv

rm: Eliminar archivos y carpetas

El comando rm (abreviatura de remove) se utiliza para eliminar archivos en el terminal de Linux.

rm nombre_de_archivo

No existe la opción de deshacer después de borrar archivos en la línea de comandos. Por eso debe ser extremadamente cuidadoso al borrar archivos. Si tienes miedo de borrar el archivo equivocado, utiliza el modo interactivo con la opción -i, que te da un prompt adicional para confirmar la acción.

rm -i nombre_de_archivo

Con la opción recursiva -r, también puede utilizar el mismo comando rm para eliminar carpetas.

Lectura recomendada: Ejemplos del comando rm

nano: Editar archivos

Tarde o temprano, tendrás que hacer cambios en el contenido de un archivo. Imagina que tienes que cambiar un archivo de configuración de SSH, grub, o alguna otra aplicación.

Existen editores de texto basados en línea de comandos para este propósito. Ubuntu viene con el editor Nano preinstalado, y es relativamente más fácil de usar que Vim, Emacs, etc.

Si tienes curiosidad sobre las diferencias, lee nuestro artículo comparativo Nano vs. Vim.

Más fácil de usar no significa la misma comodidad que un editor de texto basado en GUI. Tendrás que usar los atajos de teclado para moverte, hacer cambios, guardar y salir de los archivos.

Para abrir un nuevo archivo sin nombre con nano, utilice:

nano

Para editar un archivo existente en Nano, utilice:

nano nombre_de_archivo

En ambos casos, debería ver una interfaz como ésta.

Para guardar (o descartar los cambios) y salir de la interfaz del editor, utiliza las teclas Ctrl+x.

Por favor, consulta la guía para principiantes de Nano que he creado antes para familiarizarte con ella.

clear: Limpiar la pantalla del terminal

Nano parece complicado, ¿verdad? Déjame compartir un comando simple.

El comando clear limpia la terminal. Eso es todo.

clear

¿Y por qué necesitas hacer eso? Bueno, si la pantalla de tu terminal está inundada de cosas aleatorias y quieres hacer algo nuevo. Limpiar el terminal es como limpiar la pizarra o abrir una nueva página en tu cuaderno.

ps: Comprobar y manejar procesos

El comando ps sirve para manejar los procesos que se están ejecutando en tu sistema. Cada proceso tiene un ID asociado llamado PID, que puede ser usado para varios propósitos, como terminar un proceso.

marcocarmonapy@Msi:~$ ps
  PID TTY          TIME CMD
30022 pts/0    00:00:00 bash
30042 pts/0    00:00:00 ps

Aquí,

  • PID: ID del proceso
  • TTY: Terminal de control asociada al proceso (Hoy en día no es tan importante)
  • TIEMPO: Tiempo total de uso de la CPU
  • CMD: Nombre del comando que ejecuta el proceso

Pero un sistema no puede ejecutar sólo 2-3 procesos, ¿verdad? Para ver todos los procesos ejecutados por todos los usuarios, utilice:

ps aux

Esto le dará una lista masiva de procesos y más detalles sobre ellos. Si ejecutas este comando, ahora será un excelente momento para usar el comando clear.

Lectura recomendada: Ejemplos de comandos ps

top: Monitor del sistema

Mientras que el comando ps le proporciona todos los procesos en ejecución, el comando top le ofrece una vista en tiempo real de los procesos y del consumo de recursos del sistema.

top

Considéralo como la variante terminal del gestor de tareas en Linux. Verás un montón de detalles interesantes con el comando top.

Yo utilizo el comando top principalmente para comprobar qué proceso consume demasiada CPU o RAM. Hay mejores alternativas de top si estás interesado en experimentar.

Para detener la ejecución del comando top, utilice la combinación de teclas Ctrl+C.

Lectura recomendada: Utilizar el comando top eficazmente como gestor de tareas

lsblk: Listar discos y particiones

El comando lsblk lista todos los dispositivos de bloque de su sistema. En términos muy simples (y no del todo precisos técnicamente), muestra los discos y particiones.

root@Msi:~# lsblk
NAME    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
loop0     7:0    0 79.9M  1 loop /snap/lxd/22923
loop1     7:1    0  103M  1 loop /snap/lxd/23541
loop2     7:2    0 63.2M  1 loop /snap/core20/1623
loop3     7:3    0   48M  1 loop /snap/snapd/17336
loop4     7:4    0   48M  1 loop /snap/snapd/17029
loop6     7:6    0 63.2M  1 loop /snap/core20/1634
vda     252:0    0   25G  0 disk 
├─vda1  252:1    0 24.9G  0 part /
├─vda14 252:14   0    4M  0 part 
└─vda15 252:15   0  106M  0 part /boot/efi
vdb     252:16   0  466K  1 disk 
root@Msi:~# 

fdisk: Listar y gestionar discos y particiones

Otro comando similar pero mejor es el comando fdisk. Te permite manipular las particiones del disco. Esto significa que puedes crear nuevas particiones y borrar y redimensionar las existentes con este comando.

También puedes usarlo para listar todos los dispositivos de bloque, incluidos los de bucle, de tu sistema.

sudo fdisk -l

La salida podría ser enorme si tienes muchas particiones, discos y dispositivos de bucle (creados por aplicaciones snap). Aquí muestro una parte relevante de la salida:

Disk /dev/ram0: 64 MiB, 67108864 bytes, 131072 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram1: 64 MiB, 67108864 bytes, 131072 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

find: Buscar archivos

Incluso como usuario de escritorio, te encontrarás con casos en los que tendrás que buscar archivos en la línea de comandos de Linux.

El comando find es un comando extenso y versátil para este propósito. Tiene más de cincuenta opciones, y probablemente nunca las necesites todas.

Aquí hay un ejemplo del comando find que te dará todos los archivos que terminan con extensión .txt en el directorio actual.

find . -type f -name "*.txt"

Otros ejemplos comunes son la búsqueda de archivos por tamaño, hora de modificación, etc. Puede combinar find con exec o xargs para realizar acciones sobre el resultado del comando find. Por ejemplo, puede buscar todos los archivos .txt y elegir eliminarlos.

Lea también: Ejemplos del comando find

grep: Buscar en el contenido del archivo

El comando find busca archivos basándose en su nombre y tipo. Si desea buscar basándose en el contenido de los archivos, utilice el comando grep.

Así, en lugar de buscar todos los archivos que terminan en .txt, con grep buscas todos los archivos que contienen el texto 'foss'.

grep -ri término_a_buscar

¿Quieres más? Aquí tienes más ejemplos prácticos del comando grep. La práctica hoja de trucos de grep te ayudará.

kill: Terminar procesos

La violencia no es la respuesta... es la solución.

Es broma.

Si tienes un proceso que se porta mal y consume demasiados recursos del sistema, puedes encontrarlo y terminarlo usando el comando kill.

sudo kill -9 id_del_proceso_o_nombre

Como puedes ver en el comando anterior, necesitas saber el ID del proceso (PID) o el nombre para terminarlo. Puede utilizar el comando ps o top para obtener el PID o el nombre exacto del proceso.

ps aux | grep -i “nombre_del_programa_deseado”

¿Te has fijado en el uso del comando grep? Ya estás utilizando los comandos mencionados en esta lista.

history: Revisa qué comandos ejecutaste en el pasado

Hace unos días utilizaste un comando específico de Linux. Necesitas volver a ejecutarlo, pero no puedes recordarlo correctamente.

Puedes pulsar las teclas de flecha arriba y abajo.

Ese es un escenario familiar para muchos usuarios de Linux; aquí es donde el comando historial ayuda.

En Ubuntu, tu shell guarda un historial de los comandos que ejecutas. Introduce history en el terminal, y deberías ver un historial de los comandos que ejecutaste en el pasado.

Puede elegir ejecutar una entrada del historial utilizando su número de la siguiente manera:

!número

Pero incluso el historial puede ser enorme, así que (de nuevo) utiliza el comando grep para filtrar tu término de búsqueda.

marcocarmonapy@Msi:~/test$ history | grep -i docker
 1034  docker-compose up --build -d
 1037  docker-compose up -d
 1038  docker-compose ps
 1050  docker-compose ps
 1051  docker-compose stop sn-msa-container
 1052  docker-compose ps
 1053  docker stop sn-msa-container
 1054  docker-compose ps
 1079  docker-compose ps

Hay otra forma de acceder al historial de comandos y buscar en él. Pulse Ctrl+R y, a continuación, introduzca el término de búsqueda.

Lectura recomendada: ejemplos del comando history

chmod: Cambiar permisos de archivos

Recomiendo encarecidamente leer acerca de los permisos de archivos de Linux en esta etapa. Eso te ayudará a entender las cosas mejor que simplemente ejecutar el comando chmod a ciegas.

El comando chmod (cambiar modo) se utiliza para cambiar los permisos de un archivo.

El uso más común de este comando es cuando quieres hacer ejecutable un archivo. ¿Tienes un script de shell? Hazlo ejecutable así:

chmod u+x archivo_ejecutable

Muchos más casos de uso hacen de chmod un comando imprescindible para los usuarios de Ubuntu.

Dato curioso: La empresa matriz de It's FOSS es chmod777 Media Tech. El comando chmod 777 da todos los permisos a todos los usuarios. Esto representa nuestro lema de 'acceso al conocimiento para todos'.

lshw: Obtener los detalles del hardware

Hay toneladas de herramientas de línea de comandos para obtener los detalles del hardware y otra información del sistema en Linux.

La que probablemente viene preinstalada en Ubuntu es lshw (abreviatura de list hardware).

Ahora, por defecto, muestra una gran salida con detalles sobre todos los componentes de hardware y créeme, eso no es muy fácil de entender.

lshw

Puedes sentir la tentación de usar grep aquí, pero no hay necesidad de eso. La salida de lshw está dividida en clases y puedes usarla para mostrar los detalles de una clase de hardware.

¿Quieres saber el fabricante de tus adaptadores de red? Usa esto:

lshw -C network

sudo: Ejecutar comandos con privilegios de root

Te habrás dado cuenta de que he utilizado sudo como prefijo para algunos comandos de los que he hablado anteriormente.

Por defecto, en Ubuntu, sudo está configurado de forma que te permite (al usuario admin por defecto) ejecutar cualquier comando con privilegios de root.

Se te pide que introduzcas una contraseña, y es la contraseña de tu cuenta de usuario. Cuando introduces la contraseña, no aparece nada en la pantalla. Los nuevos usuarios se desconciertan, pero es el comportamiento esperado en UNIX/Linux. Escribes la contraseña y pulsas intro.

Más información sobre el usuario root en Ubuntu aquí.

apt: Instalar, eliminar y gestionar paquetes .deb

El comando apt se utiliza para gestionar paquetes en Ubuntu. Tendrás que usarlo con sudo ya que son tareas administrativas.

Para instalar un paquete, utiliza:

sudo apt install nombre_de_paquete

Para eliminar un software instalado, utilice:

sudo apt remove nombre_de_paquete

Para actualizar su sistema Ubuntu con todos los paquetes actualizables a la vez:

sudo apt update && sudo apt upgrade

La diferencia entre apt update y upgrade es que un update refresca la caché de paquetes y el upgrade realmente instala la actualización.

Hay mucho más en el comando apt. Puede leer esta guía detallada del comando apt.

add-apt-repository: Añadir y eliminar PPAs

De acuerdo. Este comando no es tan popular como lo era hace una década. Todavía se encontrará con el comando add-apt-repository aquí y allá. Se utiliza para gestionar los PPA (repositorios no oficiales generados por los usuarios) de tu sistema.

Mientras sigues tutoriales en la web, puede que te encuentres con instrucciones de instalación que se componen de tres líneas:

sudo add-apt-repository ppa:dr-akulavich/lighttable
sudo apt update
sudo apt install lighttable-installer

El primer comando es añadir el PPA (repositorio externo). Ya estás familiarizado con los dos siguientes, que se utilizan para actualizar la caché de paquetes e instalar software proporcionado por el repositorio PPA que acabas de añadir.

Para eliminar un PPA, primero debes eliminar el software que instalaste desde él y luego eliminarlo de la siguiente manera:

sudo add-apt-repository -r ppa:dr-akulavich/lighttable

Tengo una guía completa sobre PPA para más detalles sobre este tema.

snap: Instalar, eliminar y gestionar paquetes snap

Hasta ahora, conoces los paquetes apt y su gestión. Sin embargo, Ubuntu también usa y recomienda activamente usar su formato de paquetes snap.

Aprender algunos comandos básicos de snap te ayudará a gestionar estos paquetes de forma efectiva.

Para encontrar un paquete, utiliza

snap find término_a_buscar

Para instalar un paquete, utilice:

sudo snap install nombre_de_paquete

Para listar las aplicaciones snap instaladas:

snap list

Para listar las aplicaciones snap instaladas:

sudo snap remove nombre_de_paquete

ip: Comprobar la dirección IP y otra información

El comando ip te permite comprobar tu dirección IP. También puedes ver y manipular las rutas, dispositivos de red y más.

ip a

ping: Comprueba si el sistema remoto es alcanzable

Ping es otro comando de red de Linux que deberías conocer. Para comprobar si un sistema remoto está disponible o no, dale su dirección IP al comando ping:

ping dirección_ip

También puedes utilizarlo para comprobar si un sitio web está caído, aunque últimamente no es muy preciso.

Utilice Ctrl+C para detener la ejecución del comando ping.

Lectura recomendada: Ejemplos del comando ping

ssh: Conectarse a sistemas remotos

No me atrevía a añadir ssh a la lista de comandos Linux imprescindibles. Muchos usuarios de escritorio pueden no necesitarlo. SSH se utiliza para conectarse a otros sistemas Linux desde tu terminal.

ssh usuario@dirección_ip_del_sistema_remoto

Necesitas conocer el usuario y la contraseña del sistema remoto, por supuesto.

Si tienes servidores en la nube o una configuración doméstica donde hay otros sistemas Linux disponibles, puedes usarlo para conectarte a ellos desde tu sistema principal.

scp: Copia archivos entre sistemas remotos

Ya que incluí ssh en la lista, era justo incluir algo para transferir archivos entre los sistemas remotos a través de una conexión SSH.

El comando scp funciona casi como el comando cp que viste antes.

Aquí tienes un ejemplo que copia el fichero desde el directorio home del usuario en el sistema remoto al directorio actual de tu sistema local conectado.

scp nombre_usuario@dirección_ip:/home/nombre_usuario/nombre_archivo .

Lectura recomendada: Ejemplos de comandos scp

exit: Cierra el terminal

La lista de comandos esenciales de Linux está terminando. Así que hablemos de salir de la terminal. Es muy sencillo. Sólo tienes que entrar:

go

Si estás utilizando otro usuario o shell, se te cerrará la sesión desde ese.

También puede utilizar las teclas Ctrl+D para salir del terminal.

shutdown: Apagar o reiniciar el sistema

Muy bien. Permíteme compartir un último comando si aún no has salido de la terminal.

¿Qué tal apagar tu sistema desde la línea de comandos?

Utiliza el comando shutdown para este propósito:

shutdown

El comando anterior programa un apagado en un minuto. Puedes hacer que se apague inmediatamente con:

shutdown -now

También puedes utilizar el mismo comando de apagado para reiniciar tu sistema Ubuntu:

shutdown -r now

Consejo adicional: man: Conozca los comandos en detalle

Uno más, y éste es el último, lo prometo. Todos los sistemas Linux vienen con un manual para los comandos. Se llama manpage, y puedes acceder a la página del manual de un comando instalado con lo siguiente:

man commando

Entender la página man puede resultar abrumador para los nuevos usuarios, pero resulta bastante útil. Te da la sintaxis genérica y la descripción de las opciones de un comando.

Cuando no estés seguro de cómo utilizar un comando, prueba a consultar su página de manual antes de buscarlo en Internet.

Siempre hay más...

Comando Descripción
ls Listar contenido de una carpeta
cd Cambiar de directorio
cat Leer un archivo de texto
less Leer un archivo de texto grande
touch Crear nuevos archivos
mkdir Crear nuevas carpetas
cp Copiar archivos y carpetas
mv Cortar-pegar o renombrar archivos y carpetas
rm Eliminar archivos y carpetas
nano Editar archivos
clear Limpiar la pantalla del terminal
ps Comprobar y manejar procesos
top Monitor del sistema
lsblk Listar discos y particiones
fdisk Listar y gestionar discos y particiones
find Buscar archivos
grep Buscar en el contenido del archivo
kill Terminar procesos
history Revisar qué comandos se ejecutaron en el pasado
chmod Cambiar permisos de archivos
lshw Obtener detalles del hardware
sudo Ejecutar comandos con privilegios de root
apt Instalar, eliminar y gestionar paquetes .deb
add-apt-repository Añadir y eliminar PPAs
snap Instalar, eliminar y gestionar paquetes snap
ip Comprobar dirección IP y demás información
ping Comprobar si el sistema remoto es alcanzable
ssh Conectarse a sistemas remotos
scp Copiar archivos entre sistemas remotos
exit Terminar la terminal
shutdown Apagar y reiniciar el sistema

Son sólo unos 30 comandos. Y eso no es ni siquiera el 20% de los comandos de Linux. No he cubierto muchos comandos de red. Ni siquiera he tratado los comandos de gestión de usuarios.

Escribí esto teniendo en mente a un usuario normal de escritorio de Ubuntu. Estos son los tipos de comandos que es más probable que utilices. Tener algún conocimiento sobre ellos sería útil a largo plazo.

Aparte de eso, el aprendizaje no tiene fin. Incluso los usuarios más experimentados de Linux constantemente descubren y aprenden cosas nuevas.

Considerando que estás interesado en aprender comandos de Linux, déjame recomendarte algunos buenos libros y recursos de Linux.

Aparte de eso, también puedes aprender de sitios web como Linux Journey y Linux Handbook.

Sé que ha sido una lectura larga, pero ni siquiera es la punta del iceberg. Siempre hay más cosas que aprender, pero tampoco es que tengas que sentirte miserable si no conoces todos los comandos de Linux.

Nadie lo sabe todo.

Ahora te toca a ti. ¿Te ha resultado útil esta lista de comandos de Ubuntu?

Si tuvieras que añadirle algunos comandos más, ¿cuáles serían? La sección de comentarios es toda tuya.

About the author
Marco Carmona

Marco Carmona

My name is Marco Antonio Carmona, I'm a physics and data science student, a great and passionate reader, and randomly, my favorite hobby is writing about what I learn day by day.

Become a Better Linux User

With the FOSS Weekly Newsletter, you learn useful Linux tips, discover applications, explore new distros and stay updated with the latest from Linux world

It's FOSS

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to It's FOSS.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.