On Tue, Nov 26, 2002 at 08:49:28PM +0100, Nick Name wrote: > Si ma grep -r . non va in overflow
Infatti perche' l'argomento e' . cioe' una directory. Con questo sistema, grep parte dalla directory specificata (anche grep -r /usr/share/doc) e quanto trova una directory comincia ad aprire uno per uno i file all'interno ed applica l'algoritmo di ricerca. Se invece di un file e' una directory, come sopra, fino a quando arriva all'ultimo file nella directory specificata sulla riga di comando. Ovviamente, di possono speficiare piu' directory sulla riga di comando. Mentre l'overflow di cui parlavo riguarda l'espansione degli argomenti. Quando gli argomenti vengo espansi dalla shell, viene creato in memoria un elenco e passato all'applicazione chiamata. Al contrario, zgrep, che fa il grep in un file gz, non accetta il parametro -r in quanto e' solo uno script che in sostanza fa gunzip -c file | grep stringa per ogni file passato. In questo caso, e' allora utile il find con exec zgrep .. find . -type f -exec zgrep stringa '{}' ';' Saluti -- Alessandro Foresi a l e f 7 2 @gmx.de ' ' ' ' ' '