Menu

Eliminar gran cantidad de archivos en linux

José Cruz Chávez

Eliminar gran cantidad de archivos en linux
📁 tips tipslinux

/bin/rm: Argument list too long.

Probablemente te encuentre con este error si intentas eliminar una gran cantidad de archivos a la vez.

El problema es que cuando escribe el comando “rm -rf ”, el "" se reemplaza con una lista de cada archivo coincidente, como “rm -rf file1 file2 file3”, y así sucesivamente. Hay un pequeño buffer de memoria asignada para almacenar esta lista de argumentos y, si está completa, el shell no ejecutará el programa.

Para evitar este problema, mucha gente usará el comando “find” para buscar cada archivo y pasarlos uno por uno al comando “rm” de esta manera:

Terminal window
find . -type f -exec rm -v {} ;

Esta solución parece ser buena, el problema es que si el directorio es muy extenso, tomará mucho tiempo eliminar todos los ficheros.

Navegando en la web encontré una forma más sencilla,  agregando “-delete” al comando “find” usando este método se borran 2000/archivos por segundo. ¡Mucho más rápido!!

Terminal window
find . -name "*" -delete

También puede mostrar los nombres de los archivos cuando los esta borrando agregando -print.

Terminal window
find . -name "*" -print -delete

Este tip me ha servido mucho, espero y a alguien más sea de ayuda.

¿Listo para impulsar
tu E-commerce?

Cuéntame sobre tu proyecto y te respondo con una propuesta clara para desarrollo, optimización o migración.

Ir al formulario de contacto
WooCommerce Logo
Magento 2 Logo
Shopify Logo