Polecenie locate – wyświetla na ekranie terminala listę wszystkich plików, których nazwa pasuje do wzorca podanego jako argument
Np.:
- locate audio – wyszuka wszystkie pliki których pełna ścieżka dostępu zawiera słowo audio
- locate *.c – wyszuka pliki, których nazwa kończy się rozszerzeniem .c Polecenie find – pozwala na wyszukiwanie w drzewie katalogów plików spełniających określone kryteria.
Składnia: find [ścieżka...] [wyrażenie]
Przykłady:
find / -name top – wyszukuje we wszystkich katalogach systemu (/) do których mamy dostęp wyrażenie top
find /usr/share -iname top – wyszukuje w katalogu /usr/share wyrażenie top niezależnie od wielkości liter (np.: Top, tOP itp.)
find /usr/local –size +10000k – wyszukuje wszystkie pliki z katalogu /usr/local które są większe niż 10000 KB
find ~ -size -300b – wyszukuje pliki z katalogu domowego mniejsze od 300 bajtów find / -size 30 – wyszukuje w całym systemie pliki o rozmiarze 30 bloki po 512 bajtów (30*512B)
find ~ -amin -60 – wyszukuje w katalogu domowym pliki odczytywane w ciągu ostatnich 60
min
Uruchamianie poleceń dla wyszukanych grup plików.
Aby uruchomić polecenie dla wyszukanych plików używamy opcji –exec jeżeli w poleceniu umieścimy znaki ‘{}’ to będą one zastępowane nazwami kolejnych odszukanych plików, koniec polecenia oznaczamy ‘;’ np.:
find / -name ‘*.html’ –exec grep strona ‘{}’ ‘;’ – wyszukuje w całym systemie plików pliki z rozszerzeniem .html, a następnie wykonuje polecenie grep strona <nazwa wyszukanego pliku> dla każdego znalezionego pliku
Aby polecenie find podczas wykonywania plików prosiło o potwierdzenie zamiast –exec używamy –ok. np.:
find ~ -used +365 –ok rm ‘{}’ ‘;’- usunie z potwierdzeniem wszystkie pliki z katalogu domowego które nie były odczytywane przynajmniej od roku od ich ostatniej modyfikacji