Código fuente en Python de una herramienta de línea de comandos que permite eliminar carpetas completas en Windows y Linux. Esta herramienta agiliza considerablemente la eliminación de carpetas en Windows, en lugar de usar el propio eliminar de Explorador de archivos, que puede resultar lentísimo en carpetas con muchas subcarpetas y ficheros.

Código fuente en Python de herramienta para eliminar carpetas completas

El código del script Python para eliminar carpetas completas será:

Las opciones que admite el programa Python pasadas por argumento en la línea de comandos:

  • «-r», «–rutacarpeta»: ruta de la carpeta que se eliminará. ATENCIÓN: se eliminará todo su contenido: subcarpetas y ficheros.
  • «-nc», «–noconfirmacion»: no pedir confirmación para eliminar la carpeta y todo su contenido.
  • «-v», «–verbose»: muestra todos los ficheros y carpetas que va eliminando.
  • «-ve», «–verboseerrores»: muestra los posibles errores que se produzcan en la eliminación de cada fichero o carpeta.
  • «-vn», «–verbosenumero»: muestra el número de ficheros y carpetas eliminadas y el número de posibles errores.

Generar ejecutable portable del script Python eliminar_carpetas.py a eliminar_carpetas.exe

Copiando el código Python anterior a un fichero llamado eliminar_carpetas.py, podremos generar el ejecutable tanto para Linux como para Windows, como indicamos en este tutorial:

El proceso es el mismo para Linux que para Windows. En Linux generará un fichero ejecutable propio y en Windows generará un .exe. En el caso de Windows, hemos generado el fichero eliminar_carpetas.exe portable con el siguiente comando (estando en la carpeta que contiene el fichero eliminar_carpetas.py:

pyinstaller habrá creado una carpeta con el nombre «dist» y en ella habrá generado el fichero ejecutable portable (no necesita nada para ejecutarse en otros equipos Windows):

En esta sección podréis descargaros tanto el código fuente Python como el ejecutable de esta aplicación de ejemplo.

Ejemplo de ejecución del programa Python para eliminar carpetas en Windows y Linux

Eliminar carpetas en Windows con Python eliminar_carpetas.exe

Para ejecutar el programa eliminar_carpetas.exe en un equipo Windows, únicamente tendremos que transferir el fichero .exe del script, generado como hemos indicando anteriormente y, desde la ventana de línea de comandos (MS-DOS o Símbolo de sistema), nos posicionaremos donde hayamos colocado el eliminar_carpetas.exe, con el comando cd ruta (en nuestro caso el ejecutable está en D:\ProyectoA\Python:

Como ejemplo, eliminaremos todo el contenido de la carpeta «Eliminar ejemplo» que está en D:\Carpetas\Python, la ruta completa:

D:\Carpetas\Python\Eliminar ejemplo

Por ello, ejecutaremos el siguiente comando:

El comando anterior eliminará el contenido de la carpeta indicada en el parámetro -r y, puesto que le hemos añadido los parámetros -ve y -vn, mostrará sólo los posibles errores y mostrará, al finalizar, un resumen con el número de ficheros eliminados, el número de carpetas eliminadas, el número de errores al eliminar los ficheros y el número de errores al eliminar las carpetas:

Número de ficheros eliminados: 42
Número de carpetas eliminadas: 13
Número de errores de ficheros: 0
Número de errores de carpeta: 0

Puesto que no hemos añadido el parámetro -nc, la aplicación pedirá confirmación para realizar la eliminación.

Deberemos tener mucha precaución con la carpeta que indicamos en el parámetro -r, dado que se eliminará completamente el contenido de la misma.

Si ejecutamos el mismo comando pero añadiendo -v, mostrará el nombre y ruta completa de todos los ficheros y carpetas que va eliminando (no es recomendable usar este parámetro si tenemos muchos ficheros y carpetas). También añadiremos el parámetro -nc, para que no pida confirmación al eliminar (recuerda que la carpeta eliminada no podrá ser recuperada y se eliminará todo su contenido):

Eliminar carpetas en Linux con Python eliminar_carpetas.py

En el caso de equipos Linux, el comando eliminar_carpetas funciona exactamente igual. Habremos generado el ejecutable, al igual que para Windows, con:

En el caso de Linux, el fichero ejecutable será eliminar_carpetas:

Eliminar carpetas en Linux con Python eliminar_carpetas.py

Para eliminar la carpeta /home/alonso/eliminar_carpetas/dist/prueba eliminación, ejecutaremos el comando:

Eliminar carpetas en Linux con Python eliminar_carpetas.py

Como vemos, el script Python funciona perfectamente en entornos Windows y en entornos Linux, sin necesidad de modificar ni una sola línea de código.

Descarga del código fuente y del ejecutable para Windows y para Linux

En el siguiente enlace tenéis disponible la descarga tanto del código fuente del script en Python como el ejecutable .exe que funcionará en equipos Windows sin necesidad de instalar nada: