Ricerca rapida all'interno di file di testo in Windows


5

Esiste un programma per Windows che farebbe un ottimo lavoro di ricerca all'interno dei file?

Ho una cartella in cui ho costantemente bisogno di cercare un determinato testo, Sarebbe bello avere un programma che memorizza nella cache i file e li cerca rapidamente e mantiene la sua cache aggiornata.

Trascorro molto tempo a cercare con netbeans, notepad ++ ed ecc., Il problema è che si tratta di una cartella su una rete, quindi apre ogni file ogni volta e cerca.


"quindi apre ogni file ogni volta e cerca." - Questo sarà vero per qualsiasi strumento di ricerca che non stia comunque memorizzando nella cache una copia dei file. Lo strumento deve aprire il file per cercarlo.
EBGreen

Suppongo che l'utente intenda non aprire il file ogni volta che viene invocata una ricerca. Altrimenti avrei raccomandato grep;)
tuergeist

Sì, preferisco qualcosa che memorizza una cache, ma a parte questo, grep finora ha avuto le migliori prestazioni
user893730

Risposte:



1

Uso sempre findstr, che è paragonabile a grep, ma Windows nativo.

Esempio:

findstr /s /i /m "MyClass" *.cpp

Questo cercherà ricorsivamente ( /s) all'interno della cartella corrente. Esaminerà tutti i file il cui nome corrisponde *.cppalla stringa MyClass.

/i ignora il caso

/m stampa solo i nomi dei file corrispondenti

È possibile aprire le finestre della riga di comando ovunque in Windows facendo clic con il pulsante destro del mouse tenendo premuto MAIUSC in qualsiasi punto dello spazio libero in qualsiasi cartella. (Non fare clic con il tasto destro sui file)

findstr sarà notevolmente più veloce la seconda volta che esegui una ricerca all'interno della stessa directory poiché Windows memorizza nella cache i file aperti.


0

Usa glimpse / glimpseindex, per quanto stiamo parlando di file di testo ASCII qui. Crea un indice molto piccolo, poiché non memorizza la linea di occorrenza ma solo il fatto che si verifichi, quindi verrà eseguito un grep, ma solo nei file che contengono effettivamente la parola, che è veloce. Usa glimpseindex
per indicizzare il tuo hard disk e usa glimpse per la ricerca. l'output è simile a grep. Si adatta facilmente agli emacs.


1
Questa non è una risposta alla domanda originale. La tua soluzione è per Unix non Windows
DavidPostill

0

Usa il findcomando Ad esempio per trovare yourstringin tutti i *.txtfile:

C:\YourFolder\>find "yourstring" *.txt

Se sei su una rete, basta mappare l'unità ad Z:\esempio ed eseguire findda tale unità.

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.