Najbardziej podstawowe użycie polecenia find w Linuksie do wyszukania pliku po nazwie.

find ./ -type f -name '*.conf'

./ → przeszukaj aktualnie wybrany katalog
-type f → szukaj tylko plików
-name → szukaj wg nazwy pliku (-iname bez rozróżnienia wielkości znaków)
*.conf → pliki zakończone danym ciągiem znaków

Komenda find „znajduje” 🙂 świetne zastosowanie przy wyszukiwaniu plików na podstawie daty lub czasu ostatniej modyfikacji (mtime, mmin), daty lub czasu utworzenia (ctime, cmin), a nawet daty lub czasu ostatniego dostępu do pliku (atime, amin).

Jak znaleźć pliki utworzone lub zmodyfikowane w ostatnim czasie?

W ostatnim parametrze mtime podajemy ilość dni wstecz, jeśli zamiast dni chcemy określać czas w minutach, powinniśmy użyć mmin

find /home/htdocs -type f -mtime -1

Sprawdźmy jakie dokumenty były otwierane w ciągu ostatnich 3 dni:

find ~/Documenty -atime -3

Można używać formy odwróconej. Na przykład jeżeli chcemy znaleźć wszystkie programy w katalogu /usr/bin , które nie były uruchamiane przez ostatnie 100 dni można użyć polecenia:

find /usr/bin -type f -atime +100

Jak znaleźć pliki utworzone konkretnego dnia?

find ~ -type f -newermt "2015-03-10"

Bardziej zaawansowane użycie, jak znaleźć pliki zmodyfikowane od konkretnej daty (newermt), z pokazaniem pełnej daty utworzenia pliku, posortowane według czasu ostatniej modyfikacji (ls -t):

find /home/htdocs/ -type f -name "*.php" -newermt "2015-03-10" | xargs ls -lth --time-style="long-iso"