En este tema, aprenderás a realizar operaciones básicas con archivos y directorios en Bash. Estas operaciones son fundamentales para cualquier trabajo en la línea de comandos y te permitirán gestionar tu sistema de archivos de manera eficiente.
Contenido
Listar Archivos y Directorios
Comando ls
El comando ls
se utiliza para listar archivos y directorios en el directorio actual.
Opciones Comunes de ls
-l
: Muestra la lista en formato largo, incluyendo permisos, número de enlaces, propietario, grupo, tamaño y fecha de modificación.-a
: Muestra todos los archivos, incluidos los ocultos (aquellos que comienzan con un punto.
).-h
: Muestra tamaños en un formato legible (por ejemplo, KB, MB).
Ejemplo
$ ls -lh total 8.0K drwxr-xr-x 2 user user 4.0K Jan 1 12:00 dir1 -rw-r--r-- 1 user user 1.2K Jan 1 12:00 file1.txt
Crear y Eliminar Archivos y Directorios
Comando touch
El comando touch
se utiliza para crear archivos vacíos.
Comando mkdir
El comando mkdir
se utiliza para crear directorios.
Comando rm
El comando rm
se utiliza para eliminar archivos.
Comando rmdir
El comando rmdir
se utiliza para eliminar directorios vacíos.
Comando rm -r
Para eliminar directorios y su contenido de manera recursiva, se utiliza rm
con la opción -r
.
Ejemplo
Copiar y Mover Archivos y Directorios
Comando cp
El comando cp
se utiliza para copiar archivos y directorios.
Para copiar directorios de manera recursiva, se utiliza la opción -r
.
Comando mv
El comando mv
se utiliza para mover o renombrar archivos y directorios.
Ejemplo
$ cp archivo.txt copia_archivo.txt $ mv archivo.txt nuevo_nombre.txt $ cp -r directorio1 directorio2 $ mv directorio1 nuevo_directorio
Ver Contenido de Archivos
Comando cat
El comando cat
se utiliza para mostrar el contenido de un archivo.
Comando less
El comando less
permite visualizar el contenido de un archivo de manera paginada.
Comando head
y tail
head
: Muestra las primeras líneas de un archivo.tail
: Muestra las últimas líneas de un archivo.
Ejemplo
Ejercicios Prácticos
Ejercicio 1: Listar Archivos y Directorios
- Lista todos los archivos y directorios en tu directorio actual.
- Lista todos los archivos, incluidos los ocultos, en formato largo.
Ejercicio 2: Crear y Eliminar Archivos y Directorios
- Crea un archivo llamado
prueba.txt
. - Crea un directorio llamado
prueba_dir
. - Elimina el archivo
prueba.txt
. - Elimina el directorio
prueba_dir
.
Ejercicio 3: Copiar y Mover Archivos y Directorios
- Crea un archivo llamado
original.txt
y copia su contenido acopia.txt
. - Mueve
copia.txt
arenombrado.txt
. - Crea un directorio llamado
dir_original
y copia su contenido adir_copia
.
Ejercicio 4: Ver Contenido de Archivos
- Crea un archivo llamado
contenido.txt
con el siguiente contenido:Línea 1 Línea 2 Línea 3 Línea 4 Línea 5
- Muestra el contenido del archivo
contenido.txt
usandocat
. - Muestra las primeras 3 líneas del archivo
contenido.txt
usandohead
. - Muestra las últimas 2 líneas del archivo
contenido.txt
usandotail
.
Soluciones
Solución Ejercicio 1
# 1. Lista todos los archivos y directorios en tu directorio actual. ls # 2. Lista todos los archivos, incluidos los ocultos, en formato largo. ls -la
Solución Ejercicio 2
# 1. Crea un archivo llamado `prueba.txt`. touch prueba.txt # 2. Crea un directorio llamado `prueba_dir`. mkdir prueba_dir # 3. Elimina el archivo `prueba.txt`. rm prueba.txt # 4. Elimina el directorio `prueba_dir`. rmdir prueba_dir
Solución Ejercicio 3
# 1. Crea un archivo llamado `original.txt` y copia su contenido a `copia.txt`. touch original.txt cp original.txt copia.txt # 2. Mueve `copia.txt` a `renombrado.txt`. mv copia.txt renombrado.txt # 3. Crea un directorio llamado `dir_original` y copia su contenido a `dir_copia`. mkdir dir_original cp -r dir_original dir_copia
Solución Ejercicio 4
# 1. Crea un archivo llamado `contenido.txt` con el siguiente contenido: echo -e "Línea 1\nLínea 2\nLínea 3\nLínea 4\nLínea 5" > contenido.txt # 2. Muestra el contenido del archivo `contenido.txt` usando `cat`. cat contenido.txt # 3. Muestra las primeras 3 líneas del archivo `contenido.txt` usando `head`. head -n 3 contenido.txt # 4. Muestra las últimas 2 líneas del archivo `contenido.txt` usando `tail`. tail -n 2 contenido.txt
Conclusión
En esta sección, has aprendido a realizar operaciones básicas con archivos y directorios en Bash. Estas habilidades son esenciales para la gestión de archivos en la línea de comandos y te preparan para tareas más avanzadas en Bash. Asegúrate de practicar estos comandos para familiarizarte con su uso y sintaxis. En el próximo módulo, exploraremos comandos de procesamiento de texto en Bash.
Curso de Programación en Bash
Módulo 1: Introducción a Bash
- ¿Qué es Bash?
- Configurando tu Entorno
- Navegación Básica en la Línea de Comandos
- Entendiendo el Shell
Módulo 2: Comandos Básicos de Bash
- Operaciones con Archivos y Directorios
- Comandos de Procesamiento de Texto
- Permisos y Propiedad de Archivos
- Redirección y Tuberías
Módulo 3: Fundamentos de Scripting
Módulo 4: Scripting Intermedio
Módulo 5: Técnicas Avanzadas de Scripting
- Operaciones Avanzadas con Archivos
- Gestión de Procesos
- Manejo de Errores y Depuración
- Expresiones Regulares
Módulo 6: Trabajando con Herramientas Externas
Módulo 7: Automatización y Programación
Módulo 8: Mejores Prácticas y Optimización
- Escribiendo Código Legible
- Optimizando Scripts en Bash
- Consideraciones de Seguridad
- Control de Versiones con Git