Introducción
¡Bienvenido al laboratorio de Operaciones Básicas con Archivos en Linux! En Linux, casi todo se trata como un archivo, lo que convierte a las operaciones de archivos en algo fundamental para usar el sistema. Esta práctica te guiará a través de los comandos más comunes para administrar archivos y directorios, ayudándote a ser más hábil al navegar y organizar tu sistema Linux.
Entendiendo tu Entorno de Trabajo
En Linux, cada usuario suele tener un "directorio personal" (home), representado por el símbolo ~. Sin embargo, en este entorno de laboratorio, comenzaremos en el directorio /home/labex/project, que es nuestro directorio de trabajo predeterminado.
Primero, abre una terminal en el Escritorio O cambia a la pestaña de la terminal en el entorno del laboratorio.

Comencemos por entender nuestra ubicación actual:
pwd
pwd significa "print working directory" (imprimir directorio de trabajo). Muestra tu ubicación actual en el sistema de archivos. Este comando es crucial para orientarte dentro de la estructura de archivos de Linux. Deberías ver /home/labex/project como resultado.
Ahora, exploremos la relación entre el directorio actual y el directorio personal:
echo ~
Nota: Si no puedes escribir el símbolo
~en la terminal del Escritorio debido a diferencias en la distribución del teclado de ciertos países, puedes intentar cambiar a la pestaña de Terminal independiente en la esquina superior izquierda de la interfaz de la VM.
Este comando mostrará la ruta a tu directorio personal, que debería ser /home/labex.
Para ver el contenido de tu directorio actual, usa:
ls
Esto listará los archivos y directorios en tu directorio de trabajo actual (/home/labex/project).
También verifiquemos el contenido de tu directorio personal:
ls ~
Este comando enumera el contenido de tu directorio personal, que puede ser diferente de tu directorio de trabajo actual.
Comprender la distinción entre tu directorio de trabajo actual y tu directorio personal es importante para navegar por el sistema de archivos de Linux de manera efectiva.
Navegando por el Sistema de Archivos
Linux utiliza lo que llamamos un "sistema de archivos jerárquico". Imaginalo como un gran árbol con ramas. El tronco principal se llama "directorio raíz" y se representa con una sola barra diagonal /. Todos los demás directorios y archivos se ramifican desde esta raíz.
Exploremos cómo movernos en esta estructura arbórea:
- Verifica tu ubicación actual:
pwd
Esto debería mostrar /home/labex/project. Si no es así, podrías estar en un directorio diferente. Usa cd /home/labex/project para volver al punto de partida.
- Mira el contenido de tu directorio actual:
ls
Esto enumera todos los archivos y carpetas en tu ubicación actual. Como /home/labex/project está vacío, no verás nada.
- Sube un nivel al directorio superior (padre):
cd ..
El símbolo .. significa "el directorio de arriba". Después de este comando, ejecuta pwd nuevamente. Ahora deberías estar en /home/labex.
- Regresa a tu directorio de proyecto:
cd project
Esto te lleva de vuelta a /home/labex/project.
- Ve a tu directorio personal:
cd ~
El ~ es un atajo para tu directorio personal. Ejecuta pwd para confirmar que estás en /home/labex.
- Regresa al directorio del proyecto usando una ruta absoluta:
cd /home/labex/project
Esto se llama "ruta absoluta" porque comienza desde la raíz (/) y proporciona la ubicación completa.
Creación de Archivos y Listado de Contenidos
Ahora que sabemos cómo navegar, vamos a crear algunos archivos y explorar cómo listar el contenido de los directorios.
Primero, asegúrate de estar en el directorio /home/labex/project:
cd /home/labex/project
- Vamos a crear algunos archivos:
touch file1.txt
El comando touch se utiliza para crear un archivo vacío. Si el archivo ya existe, actualiza la marca de tiempo del archivo sin cambiar su contenido. Es una forma sencilla de crear archivos nuevos y vacíos.
echo "Hello, Linux" > file2.txt
Este comando hace dos cosas:
echoes un comando que imprime texto.- El símbolo
>redirige la salida deechohacia un archivo llamadofile2.txt. Si el archivo no existe, se crea. Si ya existe, su contenido se reemplaza.
echo "Hidden file" > .hiddenfile
Esto crea un archivo oculto. En Linux, cualquier nombre de archivo o directorio que comience con un punto (.) se considera oculto.
- Ahora, vamos a crear un directorio:
mkdir testdir
El comando mkdir (abreviatura de "make directory") crea un nuevo directorio llamado testdir.
- Listado básico:
ls

Esto muestra el contenido de tu directorio actual. Deberías ver file1.txt, file2.txt y testdir.
- Listado detallado:
ls -l
La opción -l (es una L minúscula, no el número 1) proporciona un listado en formato "largo". Verás detalles adicionales como permisos de archivo, propietario, tamaño y fecha de modificación.
- Mostrar archivos ocultos:
ls -a
Esto mostrará todos los archivos, incluyendo el archivo oculto .hiddenfile que creamos.
- Combinar opciones:
ls -la
Esto combina el formato largo (-l) con la visualización de todos los archivos (-a).
- Listar el contenido de un directorio específico:
ls -l testdir
Esto enumera el contenido del directorio testdir (que debería estar vacío en este momento).
Copiar Archivos y Directorios
Ahora que tenemos algunos archivos para trabajar, aprendamos cómo copiarlos:
- Copiar un archivo:
cp file1.txt file1_copy.txt
Esto crea una copia de file1.txt llamada file1_copy.txt en el directorio actual.
Verifiquemos la copia:
ls
- Copiar un archivo a otro directorio:
cp file2.txt testdir/
Esto copia file2.txt dentro del directorio testdir.
- Copiar un directorio:
cp -r testdir testdir_copy
La opción -r significa "recursivo". Es necesaria al copiar directorios para asegurar que se copien todos sus contenidos.
- Verificar nuestras copias:
ls
ls testdir
ls testdir_copy

Mover y Renombrar Archivos y Directorios
El comando mv se utiliza tanto para mover como para renombrar en Linux:
- Renombrar un archivo:
mv file1.txt newname.txt
Esto renombra file1.txt a newname.txt.
- Mover un archivo a un directorio:
mv newname.txt testdir/
Esto mueve newname.txt al directorio testdir.
- Renombrar un directorio:
mv testdir_copy new_testdir
Esto renombra testdir_copy a new_testdir.
- Mover y renombrar en un solo comando:
mv testdir/newname.txt ./original_file1.txt
Esto saca newname.txt de testdir y lo renombra como original_file1.txt en el directorio actual.
- Verificar nuestros cambios:
ls
ls testdir

Eliminar Archivos y Directorios
Eliminar archivos y directorios es una operación potente. A diferencia de las interfaces gráficas, la línea de comandos a menudo no tiene una "Papelera de reciclaje". Las eliminaciones realizadas con rm suelen ser permanentes. ¡Comprueba siempre tus comandos antes de ejecutarlos!
Vamos a limpiar los archivos y directorios que creamos. Asegúrate de estar en el directorio /home/labex/project.
pwd
ls -a
Deberías ver archivos como original_file1.txt, .hiddenfile, file2.txt y directorios como testdir, new_testdir.
-rw-rw-r-- 1 labex labex 12 May 3 08:44 .hiddenfile
-rw-rw-r-- 1 labex labex 0 May 3 08:45 file1_copy.txt
-rw-rw-r-- 1 labex labex 13 May 3 08:44 file2.txt
drwxrwxr-x 2 labex labex 23 May 3 08:45 new_testdir
-rw-rw-r-- 1 labex labex 0 May 3 08:44 original_file1.txt
drwxrwxr-x 2 labex labex 23 May 3 08:45 testdir
Eliminar un solo archivo:
rm original_file1.txtEl comando
rm(abreviatura de "remove") borra archivos. Comprobemos:lsoriginal_file1.txtdebería haber desaparecido.Eliminar de forma interactiva (más seguro):
Intentemos eliminar
file2.txt, pero esta vez usando la bandera interactiva-i:rm -i file2.txtLa opción
-ite pide confirmación antes de eliminar cada archivo. Escribey(para sí) y presiona Enter para confirmar la eliminación. Si escribesno cualquier otra cosa, el archivo no se borrará.lsSi confirmaste,
file2.txthabrá desaparecido.Eliminar un directorio vacío:
¿Recuerdas el
new_testdirque creamos al renombrartestdir_copy? Veamos si está vacío:ls new_testdirSi está vacío (no muestra archivos), podemos eliminarlo usando
rmdir:rmdir new_testdirrmdir(remove directory) solo funciona en directorios vacíos.lsSi
new_testdirno se puede eliminar es porque no está vacío.Intentar eliminar un directorio que no está vacío:
Ahora, intentemos usar
rmdirentestdir, que todavía contienefile2.txt(copiado en el Paso 4):ls testdir rmdir testdirEs probable que veas un mensaje de error como
rmdir: failed to remove 'testdir': Directory not empty. Esto es normal porquermdirno puede eliminar directorios que contengan archivos u otros directorios.Eliminar un directorio y su contenido (recursivamente):
Para eliminar un directorio que no está vacío, necesitamos usar
rmcon la opción-r(recursiva):rm -r testdirEste comando elimina el directorio
testdiry todo lo que hay dentro de él. Usa este comando con precaución.lstestdirahora debería haber desaparecido.Forzar la eliminación (usar con extrema precaución):
A veces, es posible que desees eliminar archivos sin que se te pregunte, incluso si están protegidos contra escritura (aunque aquí no tenemos ninguno). La opción
-f(force) hace esto.Eliminemos nuestro archivo oculto:
rm .hiddenfile ls -aAhora, combinemos
-ry-f. El comandorm -rfes extremadamente potente y potencialmente peligroso. Elimina directorios de forma recursiva (-r) y fuerza la eliminación sin preguntar (-f).!!! ZONA DE PELIGRO !!! Asegúrate ABSOLUTAMENTE de saber qué estás eliminando antes de ejecutar
rm -rf. Un pequeño error tipográfico podría borrar archivos críticos del sistema o tus datos personales. No hay opción de deshacer. Por ejemplo,rm -rf /podría intentar borrar todo tu sistema (si tienes permisos). Siempre verifica dos veces la ruta.Vamos a crear un directorio y un archivo temporales para demostrarlo (de forma segura):
mkdir temp_dir touch temp_dir/temp_file.txt ls -R temp_dirNota: Habrás notado que usamos
-R(mayúscula) conlsen lugar de-r(minúscula) como hicimos concpyrm. ¡Esto no es solo una diferencia de mayúsculas, son opciones completamente diferentes! Parals,-Rsignifica "listado recursivo" (listar subdirectorios), mientras que-rsignifica "orden de clasificación inverso". Paracpyrm, la opción recursiva es-r(minúscula). Consulta siempre el manual (man comando) para entender las opciones específicas de cada comando.Ahora, eliminémoslo a la fuerza:
rm -rf temp_dirVerifica la eliminación:
lstemp_dirdebería haber desaparecido.
Recuerda: En la línea de comandos de Linux, los archivos eliminados generalmente desaparecen para siempre. ¡Usa rm con cuidado!
Resumen
¡Felicidades! Has aprendido las operaciones de archivos esenciales en Linux:
- Navegar por el sistema de archivos con
cdypwd - Crear archivos y directorios con
touchymkdir - Listar contenidos con
lsy sus opciones - Copiar archivos y directorios con
cp - Mover y renombrar con
mv - Eliminar archivos y directorios con
rmyrmdir
Estos comandos forman la base de la gestión de archivos en Linux. Con la práctica, te volverás experto en la administración de tus archivos y directorios desde la línea de comandos.
Recuerda usar estos comandos con cuidado, especialmente rm, ya que elimina permanentemente archivos y directorios sin posibilidad de recuperación.
A medida que continúes tu viaje en Linux, explora las páginas del manual (por ejemplo, man ls) para aprender más sobre cada comando y sus opciones. ¡Feliz exploración!



