[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

¿ GREP con más de 1700 parámetros ?



Hoy me ha pasado algo inaúdito para mí. Digamos que he "saturado" los límites 
del comando "grep" así como "wc -c". Me explico:

Tengo una carpeta mdir con 20000 correos en los cuales debo analizar si está 
contenida una determinada expresión regular.

Lo hago así:

  grep -i -E "expresion regular"  *

pero me da error por número demasiado alto de parámetros.
Mediante pruebas he concluido que el máximo son unos 1700.

Sé que el mismo comando lo podría ejecutar así:

  for correo in * ; do
      grep -i -E "expresion regular"  correo
  done

pero creedme que es unas 100 veces más lento. Entiendo yo que GREP tiene la 
capacidad de optimizar búsquedas haciéndolas en varios archivos más que de 
uno en uno (o repitiendo el comando secuencialmente, mejor dicho).

No me vale esta solución pues el servidor donde debo implementar este código 
no puede permitirse dar tanto tiempo al mismo.


Mi pregunta: ¿existe forma de aumentar ese número de parámetros máximo?
Entiendo que no pero por si acaso lo pregunto.


La única solución que se me ocurre es examinar los archivos de 1700 en 1700, 
recoger cada tanda en una variable y aplicar el GREP, pero me da una pereza 
tener que hacer eso con lo fácil que es sin tanto lío... (pero claro, no 
funciona).


Sólo eso, muchas gracias por cualquier ayuda.



-- 
Iñaki



Reply to: