Det er lidt forskelligt hvad
locate og
find gør.
locate søger i en database over filnavne og er derfor ret hurtig til at give resultater. Til gengæld kan man risikere ikke at få alle resultater med, hvis ikke databasen er opdateret. For at få alt med må man først køre
Hvis du kun vil have vist filer som tilhører dig som bruger, kan du anvende
Hvis du vil indsnævre søgningen kan du bruge
Kode: Vælg alt
locate UDTRYK | grep ET-ANDET-UDTRYK
så bliver søgeresultatet for
locate filtreret gennem kriteriet i
grepfind, derimod gennemsøger hele filstrukturen i overensstemmelse med dine søgekriterier, så det er en langsommere affære. Til gengæld kan man tilføje forskellige søgekriterier.
finder filer som hedder XYX (og man kan også bruge wildcards med *)
finder alle filer som ejes af børge
finder til gengæld alle filer som ikke ejes af børge
finder filer på mere end 10 megabytes, medens
finder filer mindre end 10 megabytes.
finder regulære filer
finder mapper (directories)
finder softlinks
Man kan også bruge en boolesk logik med
(AND)
(OR)
(NOT)
Så ved at kombinere locate med grep eller find med de rette kriterier kan man lave en meget præcis søgning.
(Mere kan læres i Scott Grannemans 'Linux Phrasebook')