Es cierto que el escritorio Linux de hoy no tiene mucho que ver con el que era hace unas décadas. No obstante, aún se sigue dependiendo de comandos en muchos casos. Por eso, hemos creado este mega tutorial con los 20 comandos básicos imprescindibles que debes conocer para comenzar a moverte en tu distro Linux.
Índice de contenidos
No olvides que todos los comandos pueden mostrarte ayuda si agregas la opción -h o –help en su mayoría. Otra forma es invocar al manual, para ello, usa el comando man seguido del nombre del comando del que quieras obtener ayuda. Por ejemplo: man ls
sudo significa “superuser do” y permite ejecutar un comando con privilegios de administrador (root) de forma temporal. Es fundamental para poder ejecutar el resto de comandos cuando sean necesarios permisos elevados. Su funcionamiento es sencillo, solo hay que anteponerlo al comando que vas a ejecutar con privilegios y al pulsar INTRO para ejecutar, te pedirá la contraseña:
sudo nano /etc/passwd
ls es el comando que lista el contenido de un directorio en Linux. Es la forma más básica y universal de ver qué archivos y carpetas existen en la ubicación actual o en cualquier ruta que indiques. De esta forma, te orientará a conocer qué archivos o directorios existen, inspeccionar permisos, tamaño y fechas, así como propietarios y grupos de los archivos. Ejemplos de uso:
ls
ls /etc
ls -l
ls -a
cd significa change directory y sirve para moverte entre directorios dentro del sistema de archivos. Con él, podrás ir a donde necesites. Por ejemplo:
cd /etc
cd ..
cd ~
pwd es la abreviatura de print working directory y sirve para mostrar la ruta completa del directorio en el que te encuentras actualmente. Aunque en el prompt suele indicar dónde estas, en caso de que no sea así, podrás ver la ruta en la que te encuentras:
pwd
tree es un comando que muestra la estructura de directorios y archivos en forma de árbol, es decir, de manera jerárquica y visual. Es muy práctico para orientarse en el sistema. Ejemplos:
tree
tree -d
tree -L 2
Te puede interesar leer sobre Ubuntu vs Linux Mint, dos distribuciones ideales para principiantes
Como su propio nombre indica, clear limpia la pantalla. Cuando has ejecutado varios comandos o cuando la salida de un comando ha llenado el terminal de texto, puedes volver al estado original borrando toda la pantalla con este comando, y así tener un entorno de trabajo más despejado. Esto no altera el resultado de los comandos previos, solo elimina el texto del Terminal…
clear
cat significa concatenate y sirve para mostrar el contenido de archivos, concatenarlos y redirigirlos hacia otros archivos o comandos. A pesar de que te parezca raro por su función, es de los más usados y prácticos de Linux.
cat ejemplo.txt cat /etc/passwd
cat parte1.txt parte2.txt > completo.txt
cp significa copy y sirve para copiar archivos y directorios dentro del sistema de archivos. Es decir, hace una copia en otra ruta, manteniendo el archivo original.
cp documento.txt /home/user/Documentos/
cp -r proyecto/ respaldo_proyecto/
cp -p config.ini /etc/miapp/
mv significa move y sirve para mover o renombrar archivos y directorios. Si la ruta origen y destino son diferentes mueve el archivo o directorio, pero si es la misma ruta, entonces renombra. Ten en cuenta que hay una diferencia vital con cp, y es que en este caso no mantiene el original, solo el destino…
mv informe.txt /home/user/Documentos/
mv notas.txt notas_antiguas.txt
mv proyecto/ /home/user/Desarrollo/
rm significa remove y sirve para eliminar archivos y directorios del sistema de archivos. Ejemplos de uso cotidianos son:
rm notas.txt
rm -r proyecto/
rm -i
mkdir es la contracción de make directory y sirve para crear nuevos directorios en el sistema de archivos. Por ejemplo:
mkdir proyectos mkdir /home/proyectos
mkdir fotos videos documentos
mkdir -p proyectos/web/frontend/src
nano es un editor de texto en la terminal, diseñado para ser simple, intuitivo y fácil de usar, incluso para principiantes. Con él puedes crear o modificar archivos de texto, código fuente y scripts.
nano notas.txt
sudo nano /etc/hosts
nano backup.sh
Si el archivo no existe ya lo crea, si existe lo abre para que puedas modificarlo. Su interfaz es sencilla, y abajo verás los atajos de teclado necesarios, por ejemplo Ctrl+X para salir, Ctrl+O para guardar, etc.
chown tiene su origen change owner y sirve para cambiar el propietario y/o el grupo de archivos, directorios y enlaces simbólicos. Ejemplos:
sudo chown pr ejemplo.sh
sudo chown pr:usuarios proyecto/
sudo chown -R pr:pr /var/www/misitio
chmod es la combinación de las palabras change mode y sirve para cambiar los permisos de archivos y directorios. Ya sabes que en Linux hay tres tipos de permisos o modos:
Y se aplican a tres grupos:
Si quieres ver ejemplos de uso, aquí te muestro algunos:
chmod +x miscript.sh
chmod -x miscript.sh
chmod 644 documento.txt
chmod u+w ejemplo.txt chmod ug-x script.sh
No es un comando como tal, pero es práctico para ejecutar scripts (.sh). Una vez tienen permisos de ejecución, simplemente puedes ejecutarlo usando el nombre del script. Por ejemplo:
./script.sh sudo ./script.sh
tar o tape archive sirve para empaquetar varios archivos o directorios en un solo archivo, llamado tarball (normalmente con extensión .tar, .tar.gz, .tgz, .tar.bz2, etc.), dependiendo de si no tiene compresión o si usa algún tipo de compresión. Ejemplos:
tar -czvf backup.tar.gz documentos/
- c → crear
- z → comprimir con gzip
- v → modo verbose (muestra progreso)
- f → especificar nombre del archivo
- x → extraer o desempaquetar
tar -xzvf backup.tar.gz
tar -cvf proyecto.tar proyecto/
Recuerda que si tienes un .zip, puedes comprimir y descomprimir con los comandos zip y unzip respectivamente, seguido del nombre del archivo…
Te recomiendo leer nuestro artículo sobre el mejor hardware para Linus
grep es un nombre de comando que proviene de global regular expression print y sirve para buscar texto dentro de archivos o dentro de la salida de otros comandos. Sirve como un filtro bastante práctico para encontrar lo que buscas. Ejemplos:
grep "error" servidor.log
grep -i "usuario" datos.txt
ps aux | grep firefox
find es una herramienta extremadamente poderosa para buscar archivos y directorios en el sistema de archivos según criterios como nombre, tipo, tamaño, fecha de modificación o creación, permisos, propietario, y mucho más. Es extremadamente complejo, pero voy a mostrar ejemplos básicos. Además, en este caso puede tardar más en dar resultados, pero busca todo, a diferencia de locate, que se basa en una base de datos indexada.
find ./ -name "notas.txt" find /home "notas.txt"
find /home/biblioteca -type f -name "*.pdf"
find / -type d -name "mw"
find . -type f -name "*.tmp" -delete
Existen otras opciones que puedes usar, como -size para buscar por tamaño, -empty para filtrar archivos vacíos, -ctime, -mtime, -atime para buscar por fecha de creación, modificación, -user y -group para buscar los pertenecientes a un usuario o grupo concreto, o por permisos -perm. También se pueden combinar con operadores lógicos -and, -or, y -not para que se tengan que cumplir ambas condiciones, o una o la otra, o negar la condición.
top es una herramienta que muestra en tiempo real el estado del sistema, tanto el uso de la CPU, como de memoria, así como los procesos activos, etc. Ejemplos
top
top -u manolito
ps son las siglas de process status y sirve para mostrar una instantánea de los procesos que están ejecutándose en el sistema en ese momento. Permite no solo ver los procesos en marcha, sino también el PID, usuario, consumo de recursos de hardware, etc. Ejemplos de uso:
ps
ps aux
ps -ef
df proviene de disk free y sirve para mostrar el espacio usado y disponible en los sistemas de archivos montados. Ejemplos:
df
df -h
df -h /home
El comando du o disk usage sirve para mostrar cuánto espacio ocupan archivos y directorios en el sistema de archivos.
du -h home/ du -h
du -sh carpeta/
du -h -d 1 /var/log
curl es una herramienta de línea de comandos para transferir datos desde o hacia un servidor usando una enorme variedad de protocolos: HTTP, HTTPS, FTP, SFTP, SCP, SMTP, IMAP, WS/WSS, entre muchos otros.
curl https://example.com
curl -o salida.js https://cdn.jsdelivr.net/npm/vue/dist/vue.js
curl -C - -O https://servidor.com/archivo.iso
wget es otra herramienta de línea de comandos diseñada para descargar archivos desde la web de forma no interactiva. No es exáctamente a curl, aunque se parece en algunos aspectos. Ejemplos:
wget https://wordpress.org/latest.zip
wget -O hugo.zip https://github.com/gohugoio/hugo/archive/refs/heads/master.zip
wget -c https://releases.ubuntu.com/noble/ubuntu-24.04.4-live-server-amd64.iso
apt es el gestor de paquetes en línea para paquetes .deb que se usan en distribuciones como Debian y derivados, como Ubuntu, Linux Mint, etc. Con ella se puede instalar software desde los repositorios, resolviendo las dependencias de forma automática, además de actualizar y desinstalar. Ejemplos:
sudo apt install firefox
sudo apt remove htop sudo apt purge htop
sudo apt update
sudo apt upgrade
dnf (Dandified YUM) es el gestor de paquetes por defecto en distribuciones basadas en RPM, utilizado en Fedora, RHEL, y derivados. Su función es la misma que apt, pero para paquetes .rpm. Ejemplos:
sudo dnf install chrome
sudo dnf remove htop
sudo check-update sudo dnf upgrade
zypper es el gestor de paquetes por línea de comandos de openSUSE y SUSE Linux Enterprise, y funciona sobre el motor ZYpp. En este caso, también trabaja con paquetes .rpm. Ejemplos:
sudo zypper install ffmpeg
sudo zypper remove ffmpeg
sudo zypper refresh sudo zypper update
sudo zypper dist-upgrade
pacman es el gestor de paquetes oficial de Arch Linux y todas sus distribuciones derivadas (Manjaro, EndeavourOS, etc.). Ejemplos de uso:
sudo pacman -S gimp
sudo pacman -R gimp
sudo pacman -Syu
snap es el gestor de paquetes universal desarrollado por Canonical. Aunque se hizo especialmente para Ubuntu, también puede funcionar en otras distros como Debian, Arch, Fedora, openSUSE, etc. Su uso es sencillo, como por ejemplo:
sudo snap install spotify
sudo snap remove spotify
sudo snap refresh vlc
sudo snap refresh
Recuerda que también existen los paquetes universales AppImage y Flatpak que funcionan en todas las distros. En estos casos, puedes usar directamente la web de Flathub para descargar e instalar o la de AppImage…
Por último, es importante también conocer cómo se puede compilar un código fuente, ya que es algo que en algún momento toca hacer cuando estás en Linux en paquetes que no se distribuyen como binarios. Para ello, el proceso genérico es el siguiente, imaginando que el tarball de código fuente se llama paquete.tar.gz:
tar -xf paquete.tar.gz cd paquete/ ./configure make sudo make install
Si tienes dudas, deja tus comentarios
El mercado de las consolas portátiles de gama alta ha sumado un nuevo competidor. La…
Chen Li-bai, el presidente de ADATA, uno de los principales fabricantes de memoria a nivel…
Aunque la inteligencia artificial ofrece grandes ventajas creativas, también plantea un riesgo, que son la…