bash

Solución: -bash: /bin/rm: La lista de argumentos es demasiado larga

Si alguna vez te encuentras con el error que da título a este post cuando has intentado eliminar una gran cantidad de archivos de manera simultánea, la forma más común de solucionarlo es usando la orden 'find'. Ejemplo:

bash> find /directorio/ -name "archivos*" -exec rm {} \;

Este error se produce en sistemas que tienen el kernel de linux anterior al 2.6.23 ya que esos kernels tienen un tope en la lista de argumentos soportada.

Usando find y pasándole a rm, uno a uno los archivos a eliminar, evitamos usar una lista de argumentos grande. La contrapartida de esta solución es que ejecuta un rm por archivo con lo cual es más ineficiente.

Distribuir contenido