View Full Version : come cerco un file?
sempreio
21-06-2004, 17:57
che comando uso per cercare un file con relativa estensione?:D
maxithron
21-06-2004, 17:58
puoi usare locate:
es. locate nome_file.tar.gz
locate nome_file*.*
oppure usare il comando find
sempreio
21-06-2004, 18:01
Originariamente inviato da maxithron
puoi usare locate:
es. locate nome_file.tar.gz
locate nome_file*.*
oppure usare il comando find
grazie mille mi interessava proprio locate :)
maxithron
21-06-2004, 18:05
Originariamente inviato da sempreio
grazie mille mi interessava proprio locate :)
ovviamente puoi combinarlo con i vari grep, less etcetera..
sempreio
21-06-2004, 18:24
Originariamente inviato da maxithron
ovviamente puoi combinarlo con i vari grep, less etcetera..
troppo complicato, per ora mi basta locate e slocate e find soli soletti:mc:
mingotta
21-06-2004, 21:55
lo sai che locate si basa su un db che viene creato quanto root lancia il comanda updatedb?
Perciò se nn trovi qualcosa, ma tu sai che c'è, è perchè devi aggiornare il db con updatedb!
sempreio
21-06-2004, 21:59
Originariamente inviato da mingotta
lo sai che locate si basa su un db che viene creato quanto root lancia il comanda updatedb?
Perciò se nn trovi qualcosa, ma tu sai che c'è, è perchè devi aggiornare il db con updatedb!
ecco perchè:muro: ma spiegami è un comando che non ho mai usato basta che da root scriva updatedb?:)
maxithron
22-06-2004, 01:31
Originariamente inviato da sempreio
ecco perchè:muro: ma spiegami è un comando che non ho mai usato basta che da root scriva updatedb?:)
si, ci mette un pochino di tempo ma non devi fare altro.
mingotta
22-06-2004, 11:53
volendo puoi mettere updatedb in crontab. Su windows funziona allo stesso modo.
a me il locate dava spesso problemi.. (errori del tipo "il database è + vecchio di 8 giorni" o cose simili.. vai a sapere.. :mad: :confused: :D ) quindi utiliuzzo sempre il caro vecchio find :p
find /path -name nome_che_vuoi
ciao! :)=
Originariamente inviato da mingotta
lo sai che locate si basa su un db che viene creato quanto root lancia il comanda updatedb?
Perciò se nn trovi qualcosa, ma tu sai che c'è, è perchè devi aggiornare il db con updatedb!
ecco la risp ai miei problemi.. avessi letto.. :D
ziobystek
22-06-2004, 14:13
Originariamente inviato da moly82
a me il locate dava spesso problemi.. (errori del tipo "il database è + vecchio di 8 giorni" o cose simili.. vai a sapere.. :mad: :confused: :D ) quindi utiliuzzo sempre il caro vecchio find :p
find /path -name nome_che_vuoi
ciao! :)=
non manca -print alla fine?
Ikitt_Claw
22-06-2004, 14:18
Originariamente inviato da ziobystek
non manca -print alla fine?
E` Implcito.
Da man find:
If no paths are given, the current directory is used.
If no expression is given, the expression `-print' is used.
ziobystek
22-06-2004, 14:21
ah! ma da poko.
mi ricordo all' epoka ke avevo scoperto il find, che se non mettevo -print non mi visualizzava i risultati! :D
Ikitt_Claw
22-06-2004, 15:32
Originariamente inviato da ziobystek
ah! ma da poko.
Da quando uso find IIRC :D
mi ricordo all' epoka ke avevo scoperto il find, che se non mettevo -print non mi visualizzava i risultati! :D
BSD find dovrebbe comportarsi come dici tu, mentre AFAIK in GNU find -print e` default da parecchio tempo.
ziobystek
22-06-2004, 16:13
Originariamente inviato da Ikitt_Claw
Da quando uso find IIRC :D
BSD find dovrebbe comportarsi come dici tu, mentre AFAIK in GNU find -print e` default da parecchio tempo.
allora mi sa che era FreeBSD. ;)
io uso il 90% delle volte locate, ma mi chiedevo leggendo il post quale era l'utilità di sminuire la ricerca con grep se già dopo scritto locate di metto io il nome o parte del file con atttributi speciali quali */ punti etc.
es:
locate gdesklets
caxxo greppo in questo caso ? :D :confused:
mi fate un esempio che possa reggere l'uso del grep? grazie. :oink:
Marsangola
22-06-2004, 16:23
Beh, il grep cerca una stringa all'interno di un file (o stdin) mentre il find esegue un filtro sul *nome* del file. Potresti voler cercare la stringa "ciao" all'interno di tutti i file con estensione ".text", quindi:find / -name "*.text" | grep ciao(Spero funzioni :oink: ) Ciao
Originariamente inviato da Marsangola
Beh, il grep cerca una stringa all'interno di un file (o stdin) mentre il find esegue un filtro sul *nome* del file. Potresti voler cercare la stringa "ciao" all'interno di tutti i file con estensione ".text", quindi:find / -name "*.text" | grep ciao(Spero funzioni :oink: ) Ciao
no ma scusa il comando che si sta eseguendo in questo caso è locate non grep.
il testo lo troverei con:
grep "ciao" /home/user
ma nel caso di locate gdesklets cosa cerca dentro i file che mi restutuirebbe l'output di locate?
Marsangola
23-06-2004, 09:03
Per cercare la stringa "ciao" all'interno di un gruppo di file solitamente si fa un grep "ciao" *.text, ma volevo provare se funzionava mettendo il grep in pipe con il find... niente, dovro' riguardarmi un po' di teoria sul reindirizzamento :) . Sorry.
Originariamente inviato da Marsangola
Per cercare la stringa "ciao" all'interno di un gruppo di file solitamente si fa un grep "ciao" *.text, ma volevo provare se funzionava mettendo il grep in pipe con il find... niente, dovro' riguardarmi un po' di teoria sul reindirizzamento :) . Sorry.
No, non il reindirizzamento, ma il man di find.
Con find usa l'opzione exec:
find . -iname "*.txt" -exec grep -H ciao {} \;
(Be', cmq il reindirizzamento guardalo lo stesso :p)
Guldo
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.