Come posso individuare un file utilizzando locate
in CentOS
in una directory specifica dal terminale? Individua la ricerca in tutto il database!
Risposta
Non cè alcuna opzione per quella funzionalità nelloutput di man locate
almeno su CentOS 6.5. Tuttavia, potresti ottenere pseudo-funzionalità modificando un termine di ricerca. Ad esempio, locate cron
potrebbe produrre un output eccessivo, ma locate "/var/log/cron"
limiterebbe i risultati a quegli elementi nel locate
database che corrispondono ai termini di ricerca. Oppure, una pipe funzionerebbe: locate cron | grep "/var/log/"
Altrimenti, usa find: find /path/to/search -name "*cron*"
o simile.
La risposta
locate
sembra non avere unopzione per farlo, ma puoi comunque cercare directory specifiche utilizzando uno dei seguente:
- Utilizza i caratteri jolly nella tua ricerca. Esempio:
locate "*/directory/*filename*"
- Utilizza
grep
conlocate
. Esempio:locate filename | grep /directory/
- Utilizza il comando
find
. Esempio:find /my/directory/ -name filename
. Puoi anche limitare la ricerca alle directory o ai file aggiungendo-type d
o-type f
. Per trovare un file chiamato “myScript” nella tua cartella Inizio puoi fare questo:find ~/ -name myScript -type f
. Questo cercherà un file (non directory) chiamato esattamente “myScript” allinterno della tua cartella home.