Ricerca per primo con ack o grep


11

Quando cerco, ad esempio, la mia home directory con ack(o grep), normalmente voglio sapere dove ho impostato un'opzione specifica.

Dal momento che la maggior parte dei file di configurazione sono molto vicini ~, aumenterebbe considerevolmente la velocità ackse potessi effettuare ricerche per ampiezza. È possibile?


1
Purtroppo la risposta sembra essere no.
Nifle,

4
Sembra che ogni paio di mesi vado su Google e torno a questa pagina.
Gregory Nisbet,

2
@GregoryNisbet La mia "soluzione" è stata passare a ag, che è circa 5-10 volte più veloce di acke non presenta inconvenienti. In combinazione con il passaggio a SSD non ho avuto il problema da allora.
Profpatsch,

Risposte:


2

Non lo so ackma con strumenti come di grepsolito utilizzo:

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

La parte tra (e )assicura che prima siano elencati i file al livello 1 e successivamente quelli a 2 e più profondi (puoi variare). xargsalimenta i nomi dei file da 50 a grep.

Naturalmente dipende da quale variante di findè disponibile sulla tua piattaforma. Se esegui qualcosa di 30 anni fa, dovrai usare qualcosa come l'ordinamento sul numero di barre.


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

Se non hai intenzione di usare -print0per trovare, almeno fallo find . -maxdepth 1 -exec grep {} +;. mywiki.wooledge.org/BashFAQ/020
Espiazione limitata
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.