FIND
Zoeken naar bestanden
We zijn allemaal wel eens op zoek naar een bepaald bestand op onze computer. --waar heb ik dat bestand nu ook weer opgeslagen--.
Als we de naam van het bestand nog weten dan kunnen we het programma find gebruiken om hiernaar te zoeken. De syntaxis is in dit geval heel gemakkelijk:

- find : het commando
- . : de lokatie vanwaar we willen gaan zoeken (in dit geval vanaf de huidige directory.
- -name : vertel find dat we een bestand zoeken met de naam nvim
- -print : "print voor alle gevonden bestanden hun locatie op het scherm.
In dit voorbeeld heb ik dus gezocht in mijn ~ (home) directory naar bestanden met de naam nvim (dit is NeoVim een editor gebaseerd op vi/vim).
Je kunt ook iname gebruiken i.p.v. name dit zal ervoor zorgen dat je "CaSe InseNSitiVe zoek" of niet hoofd/kleine-letter gevoelig.
Maar wat doen we als we de exacte naam van het bestand niet meer weten? Als we enkel het begin van de naam kennen dan kunnen we een wildcard gebruiken.

find werkt met alle wildcards die de shell ondersteunt (dus ook ? en [].

De twee bestanden die in afbeelding 1 nog gevonden worden, worden nu niet meer weergegeven omdat ze "dieper" liggen dan de maximum van 2 sub-directories.
Als je de naam van het bestand niet weet of je wil zoeken op bepaade criteria dan kun je oa. de volgende gebruiken:
- -mtime wanneer is het bestand gemaakt of het laatst
aangepast
- find ~ -mtime -3 -print : Minder dan 3 dagen geleden
- find ~ -mtime 1 -print : Tussen de 24 en 48 uur
- find ~ -mtime +20 -print : Meer dan 20 dagen geleden
- -size zoeken op grote van het bestand
Het is ook mogelijk om deze criteria te combineren, het zoekresultaat moet dan voldoen aan alle criteria de we opgeven. Bijvoorbeeld:

Het is ook mogelijk om bepaalde bewerkingen uit te voeren op de gevonden bestande. Hiervoor gebruiken we de -exec parameter én de hierbij horende {} en \; parameters.

Gevaar! | |
---|---|
Meer informatie kun je altijd terugvinden in de manpages of de infopages