Comandos Linux
Los comandos básicos de Linux que todo usuario debe conocer
Comandos Linux
Usamos BASH como intérprete de los comandos linux.
Introducción
Linux es uno de los sistemas operativos más robustos, seguros y flexibles a nivel global. Aunque dispone de entornos gráficos avanzados, su verdadero potencial se manifiesta en la interfaz de línea de comandos (CLI). Desde ella es posible interactuar directamente con el sistema, administrar recursos, gestionar usuarios y permisos, instalar o actualizar paquetes, automatizar procesos y acceder a funcionalidades de bajo nivel.
El intérprete de comandos Bash (Bourne Again SHell) espera recibir una cadena de instrucciones para ejecutar la operación solicitada. La estructura general de una orden es: COMANDO [OPCIONES] [ARGUMENTOS].
El comando indica la acción a realizar.
Las opciones (generalmente precedidas por
-o--) modifican el comportamiento del comando.Los argumentos especifican los objetos o recursos sobre los que actuará la orden.
En esta guía se presentan los comandos fundamentales del entorno Linux, detallando su funcionalidad, contexto de uso y ejemplos prácticos para facilitar la experimentación en un entorno real.
1. man – Consultar el manual de un comando
La mayoría de los comandos proporcionan documentación integrada accesible mediante la utilidad man.
Ejemplo:
man ls
# Muestra la documentación completa del comando ls.
# Para salir del manual, presiona q.
2. pwd – Mostrar el directorio actual
Muestra la ruta completa del directorio en el que estás ubicado.
Ejemplo:
pwd
# Este comando mostrará la ruta en la que estamos,
# por ejemplo /home/usuario/Documentos
3. cd – Cambiar de directorio
Change directory, nos perminte navegar entre los diferentes directorios de nuestro sistema.
Ejemplos:
cd Documentos # Cambia al directorio "Documentos".
cd .. # Retrocede un nivel de directorio.
cd / # Va al directorio raíz del sistema.
cd ~ # Hace referencia al directorio personal del que ejecuta la orden.
4. ls – Listar archivos y directorios
El comando ls muestra el contenido de un directorio. Es uno de los comandos más usados.
Ejemplos:
ls -l # (Lista los directorios en formato largo, con permisos, propietario, tamaño y fecha).
ls -lh # (La "h" simboliza que nos lo muestre en formato humano, más legible).
ls -lS # (La "S" nos lista los archivos ordenados de mayor a menor tamaño, si queremos que sea de menor a mayor, usamos el argumento "r" que sería como reverse, tal que así: ls -lSr).
ls -lt # (La "t" nos lista los archivos ordenados de más recientes a más antiguos, si queremos que sea de más antiguos a más nuevos usamos el argumento "r" tal que así: ls -ltr).
ls -ltrh # (Este comando lo uso mucho y con él listo de forma que muestro los archivos ordenados de más antiguos a más recientes en formato humano).
ls -a # (La "a" corresponde a "all", con ésto se listan todos los archivos , incluso los que están ocultos).
5. mkdir – Crear un directorio
Este comando nos ayudará a la hora de crear carpetas nuevas.
Ejemplo:
mkdir Proyectos # Nos crea una nuevo directorio llamando Proyectos.
mkdir -p proyectos/python/app # Crea varias carpetas anidadas a la vez.
6. rm – Eliminar archivos o carpetas
Borra archivos o directorios. ⚠️ ¡Usa con cuidado!
Ejemplos:
rm archivo.txt # Eliminamos el archivo llamado archivo.txt.
rm -r carpeta/ # Elimina una carpeta y todo su contenido de forma recursiva.
7. cp – Copiar archivos o carpetas
Ejemplos:
cp archivo.txt copia.txt # Estamos copiando archivo.txt dentro de copia.txt
cp -r carpeta1/ carpeta2/ # Copiamos la carpeta1 con todos sus archivos dentro en carpeta2.
8. mv – Mover o renombrar archivos
Ejemplos:
mv archivo.txt /home/usuario/Documentos/ # Mueve el archivo a otra carpeta.
mv viejo_nombre.txt nuevo_nombre.txt # Renombra un archivo.
9. cat – Ver el contenido de un archivo
Ejemplo:
cat notas.txt
# También puedes combinarlo con | (pipe)
cat notas.txt | head -n 5
# Muestra solo las primeras 5 líneas.
10. grep – Buscar texto dentro de archivos
Ejemplo:
grep "error" log.txt
# Buscamos la palabra error dentro del archivo log.txt
grep -r "TODO" .
# Con la opción -r Busca de forma recursiva la palabra "TODO"
# en todos los archivos del directorio actual.
11. sudo – Ejecutar comandos como superusuario
Algunos comandos requieren permisos administrativos. sudo permite ejecutarlos con privilegios elevados.
Ejemplo:
sudo apt update
# Actualiza la lista de paquetes en distribuciones
# basadas en Debian.
12. top – Ver procesos en ejecución
Ejemplo:
top
# Muestra los procesos activos en tiempo real,
# similar al “Administrador de tareas”.
13. history – Muestra el historial de últimos comandos ejecutados
Ejemplo:
history
# Muestra una lista clave valor con las últimas
# instrucciones realizadas, si quiero que se ejecute una de ellas
# pongo su clave tal que así: !133 y se ejecutará.
14. Crear archivos de texto.
Ejemplo:
touch nombre_del_archivo.txt
# Crea un archivo vacío usando el comando touch.
cat >> nombre_del_archivo.txt
# Crea archivos usando el comando cat.
echo "Esto es un ejemplo" > nombre_del_archivo.txt
echo > archivo.txt
# Crea un nuevo archivo utilizando el comando echo.
vim nombre_del_archivo.txt
nano nombre_del_archivo.txt
# Crea un nuevo archivo usando un editor de texto como Nano o Vim.
15. Comandos sobre el uso de disco.
Ejemplo:
df -h
# (Disk free), nos da información sobre las particiones del
# sistema: tamaño total, usado y libre. Con la opción -h
# nos muestra en formato humanos. Ejemplo: df -h /home/.
du -h
# (Disk usage), muestra el espacio del disco ocupado por un
# fichero o directorio, el argumento -h nos muestra la info en formato humano.
du -sh /*
# Lista la info de uso de disco de la raiz.
du -sh * | sort -h
# Ejemplo muy bueno para que nos liste y veamos el directorio
# con más tamaño
Tipos de permisos en Linux
Cada archivo o directorio tiene tres tipos de permisos que se aplican a diferentes niveles.
- r (read / leer):
- Archivos: permite leer el contenido del archivo.
- Directorios: permite listar el contenido (ls).
- w (write / escribir):
- Archivos: permite modificar el contenido.
- Directorios: permite crear, borrar o renombrar archivos dentro del directorio.
- x (execute / ejecutar):
- Archivos: permite ejecutar el archivo como un programa o script.
- Directorios: permite entrar al directorio (cd) y acceder a archivos dentro.
2. Niveles de permisos
Cada archivo/directorio tiene permisos para tres categorías de usuarios:
- u (user) → el propietario del archivo.
- g (group) → los usuarios del mismo grupo que el propietario.
- o (others) → todos los demás usuarios.
# Comandos para conocer al usuario, al grupo al que pertenece
whoami
# Muestra el nombre del usuario que ha iniciado sesión actualmente en el sistema.
groups
# Muestra los grupos a los que pertenece un usuario específico.
id
# Muestra información detallada de identificación del usuario actual o especificado.
# El comando chown (Change Owner) cambiar el propietario y/o el grupo de un archivo o directorio.
chown [usuario]:[grupo] archivo # Sintaxis básica
sudo chown victor mi_archivo.txt
# Cambia el propietario de mi_archivo a victor.
sudo chown victor:desarrolladores mi_archivo.txt
# Cambia el propietario de mi_archivo a victor y el grupo a desarrolladores.
Formas de cambiar los permisos con chmod:
(u de usuarios, g de grupo, o de otros y a de all que es todos)
- con + y – (el más concreto porque solo afecta al permiso que indicamos).
- Ejemplo: chmod u+w–x, g–r, o+w nombre_fichero.txt
- con = (cambia un grupo entero de permisos).
- Ejemplo: chmod u=rw, g=r, o=x nombre_fichero.txt
- Usando números (4=r, 2=w, 1=x) para el propietario, grupo y otros
7(4+2+1) = rwx6(4+2) = rw-5(4+1) = r-x
# El comando chmod (Change Mode) modifica los permisos de acceso (lectura r, escritura w, ejecución x).
chmod 755 mi_archivo.sh # Propietario (rwx), Grupo (r-x), Otros (r-x).
chmod 644 mi_archivo.txt # Propietario (rw-), Grupo (r--), Otros (r--).
chmod +x mi_archivo.sh # Añade permiso de ejecución para todos
chmod -R 777 /ruta/ # Da todos los permisos (lectura, escritura, ejecución) recursivamente (¡usar con precaución!).
Conclusión
Dominar estos comandos básicos te abrirá la puerta al mundo de Linux. Con el tiempo, podrás combinarlos y automatizar tareas complejas mediante scripts, optimizando tu flujo de trabajo como nunca antes.
Recuerda: la terminal no es un enemigo, es una herramienta poderosa. ¡Experimenta sin miedo y aprende haciendo!
0 comentarios