Archivos y Directorios
Clase 30 de 43 • Curso de Programación en Bash Shell
Contenido del curso
Programación Shell Básica
Script Interactivos
Condicionales
Iteración
Archivos
Empaquetamiento
Funciones
Cierre del curso
Aprende a crear y gestionar archivos y directorios en Bash de forma segura y automatizada. Con comandos como mkdir y touch, condicionales if/elif y el manejo de argumentos, optimizas flujos sin abrir otros programas, manteniendo el script ejecutándose línea por línea con claridad y control.
¿Cómo crear directorios y archivos en bash con mkdir y touch?
Crear recursos desde la terminal es directo y potente. Para directorios, se usa mkdir; para archivos, se usa touch. La diferencia clave: touch crea el archivo y queda listo para usarse; no abre editor. En cambio, abrir con el editor Bing sirve para editar, no para la creación simple.
- Usa mkdir con permisos: mkdir -m 755 nombre_de_directorio.
- Configura permisos en el acto con -m 755.
- Según se explica, 755 da todos los permisos al usuario y permisos de lectura y escritura al grupo y a otros usuarios.
- Para archivos, touch nombre_de_archivo crea el file sin abrir editores.
- Verifica con ls -la para revisar permisos y existencia.
¿Qué diferencia hay entre mkdir y touch?
- mkdir: crea directorios con permisos definidos al instante.
- touch: crea archivos vacíos sin invocar otro programa.
- Abrir con editor Bing: edita contenido, no conviene en scripts que ejecutan sentencia a sentencia.
¿Cómo usar condicionales y argumentos en bash para automatizar la creación?
El flujo propuesto decide según el primer argumento: D para directorio o F para file. El segundo argumento es el nombre. Se recalca respetar los espacios en las sentencias condicionales y entre palabras reservadas.
#!/usr/bin/env bash
# Título: Archivos directorios
if [ "$1" = "D" ]; then
mkdir -m 755 "$2"
echo "Directorio creado correctamente"
ls -la "$2"
elif [ "$1" = "F" ]; then
touch "$2"
echo "Archivo creado correctamente"
ls -la "$2"
else
echo "no existe esa opción"
fi
- Primer argumento ($1): tipo de recurso, D o F.
- Segundo argumento ($2): nombre del directorio o archivo.
- Mensajes claros: "Directorio creado correctamente" y "Archivo creado correctamente".
- Verificación inmediata con ls -la "$2".
¿Cómo ejecutar el script?
- Limpia la pantalla si lo deseas: clear.
- Ejecuta: ./script.sh D prueba.
- Verifica el directorio creado: ls -la prueba.
- Ejecuta: ./script.sh F prueba.txt.
- Verifica el archivo creado: ls -la prueba.txt.
¿Qué errores comunes aparecen y cómo resolverlos?
Puede aparecer el mensaje "operador unitario inesperado" al evaluar condiciones cuando no se envían argumentos. En el ejemplo, se vio en líneas específicas del archivo y se confirmó que la sintaxis estaba bien; el problema era no haber pasado D/F y el nombre.
- Comprueba que envías ambos argumentos: tipo y nombre.
- Revisa la sintaxis de if/elif y los espacios en [ condición ].
- Usa ls para validar el resultado tras ejecutar.
- Mantén el script sin abrir otros programas, para no interrumpir la ejecución.
¿Te gustaría compartir cómo automatizas la creación de recursos en Bash y qué validaciones agregas para hacer tus scripts más robustos?