Búsqueda de amplitud primero con ack o grep


11

Cuando busco, por ejemplo, mi directorio de inicio con ack(o grep), normalmente quiero saber dónde configuro una opción específica.

Dado que la mayoría de los archivos de configuración están muy cerca ~, se aceleraría considerablemente acksi pudiera buscar primero. es posible?


1
Lamentablemente, la respuesta parece ser no.
Nifle

44
Parece que cada dos meses busco esto en Google y vuelvo a esta página.
Gregory Nisbet

2
@GregoryNisbet Mi "solución" ha sido cambiar a ag, que es entre 5 y 10 veces más rápido acky no presenta inconvenientes. Combinado con el cambio a SSD, no he tenido el problema desde entonces.
Profpatsch

Respuestas:


2

No lo sé, ackpero con herramientas como las grepque suelo usar:

( find . -maxdepth 1 -print ; find . -mindepth 2 -print ) | xargs -n 50 -exec grep TXT

La parte entre (y )asegura que primero se enumeran los archivos en el nivel 1 y luego los que están en 2 y más profundos (puede variar). xargsalimenta los nombres de archivo por 50 a grep.

Por supuesto, depende de qué variante findesté disponible en su plataforma. Si ejecuta algo de hace 30 años, necesitará usar algo como ordenar el número de barras diagonales.


MMV (Archlinux):grep: ./.macromedia/Flash_Player/#SharedObjects/Q2GSRK6Y/www.mixcloud.com/media: Is a directory
xtian

Si no vas a usar -print0para buscar, al menos hazlo find . -maxdepth 1 -exec grep {} +;. mywiki.wooledge.org/BashFAQ/020
Expiación limitada el
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.