Guía avanzada para eliminar archivos y directorios en Python
En Python, el manejo de archivos y directorios es una tarea común, especialmente para aplicaciones que requieren manipulación de archivos. Esta guía se centra en técnicas avanzadas para eliminar archivos y directorios utilizando varios módulos de Python, incluyendo os, shutil y pathlib. Cada uno de estos módulos proporciona diferentes funcionalidades para las operaciones del sistema de archivos, permitiéndote gestionar archivos y directorios de forma eficiente. Para descargar Python, accede al siguiente enlace de la fuente oficial python.org.
Comprender los módulos
1. El módulo os
El módulo os proporciona una forma de utilizar la funcionalidad dependiente del sistema operativo, como leer o escribir en el sistema de archivos. Incluye funciones para eliminar archivos y directorios. El uso del módulo os en un entorno de alojamiento VPS Linux proporciona un control eficiente sobre la gestión de archivos y otras operaciones a nivel de sistema. Este módulo permite a los desarrolladores realizar acciones como leer, escribir y eliminar archivos y directorios directamente en el servidor
Funciones clave:
- os.remove(ruta): Elimina (borra) la ruta del fichero.
- os.rmdir(ruta): Elimina (borra) la ruta del directorio. El directorio debe estar vacío.
- os.unlink(ruta): Otro nombre para os.remove(), utilizado para eliminar un archivo.
2. El módulo shutil
El módulo shutil ofrece una interfaz de alto nivel para operaciones con ficheros. Es especialmente útil para copiar y eliminar directorios y archivos.
Funciones clave:
- shutil.rmtree(ruta): Borra recursivamente un directorio y todo su contenido, incluyendo subdirectorios y ficheros.
- shutil.move(src, dst): Mueve un archivo o directorio a otra ubicación, que también se puede utilizar para eliminar archivos moviéndolos a un directorio inexistente.
3. El módulo pathlib
El módulo pathlib proporciona un enfoque orientado a objetos para manejar las rutas del sistema de archivos. Este módulo se introdujo en Python 3.4 y se considera más intuitivo y legible.
Funciones clave:
- Path.unlink(): Elimina un fichero.
- Path.rmdir(): Elimina un directorio vacío.
- Ruta.rmtree(): Para eliminar un directorio y su contenido, normalmente se utiliza shutil.rmtree() en combinación con Path.
Técnicas avanzadas para eliminar archivos y directorios
Uso del módulo os
A continuación se explica cómo utilizar el módulo os para eliminar archivos y directorios:
Opción A: Ejecutando en Python Interactivo
- Abra una sesión interactiva de Python escribiendo:
(Usa python si así es como está configurado Python en tu sistema, pero generalmente, python3 es el comando recomendado para Python 3.x).
- Copie y pegue el código directamente en la sesión interactiva (script a continuación)
pción B: Escribir en un archivo de guión Python
- Cree un nuevo archivo utilizando un editor de texto, como nano:
- Copia y pega el siguiente código en el archivo (script de abajo)
- Ahora, puedes ejecutar tu script Python desde la terminal:
Eliminar un único archivo
importar os
ruta_archivo = 'ejemplo.txt'
prueba:
os.remove(ruta_archivo)
print(f'Eliminado con éxito {ruta_archivo}')
excepto FileNotFoundError:
print(f'El archivo {ruta_archivo} no existe')
except PermissionError:
print(f'Permiso denegado: no se puede eliminar {ruta_archivo}')
excepto Exception como e:
print(f'Se ha producido un error: {e}')