Zarówno find, jak i locate to polecenia wiersza poleceń w systemie Linux, które służą do wyszukiwania plików w systemie plików. Istnieją jednak między nimi pewne kluczowe różnice. Systemy operacyjne oparte na Linuxie oferują potężne narzędzia do zarządzania plikami i katalogami, w tym również do ich wyszukiwania. Dwa z najbardziej użytecznych narzędzi to komendy find i locate, które pomagają użytkownikom szybko znaleźć pliki i katalogi na swoich systemach. W tym artykule wyjaśnimy, czym są te narzędzia, do czego służą oraz jak z nich korzystać.
Czym jest find?
Komenda find w Linuxie to potężne narzędzie służące do wyszukiwania plików i katalogów w strukturze systemu plików. Pozwala ona na wyszukiwanie plików na podstawie wielu kryteriów, takich jak nazwa, typ, rozmiar, data modyfikacji, uprawnienia i wiele innych. find przeszukuje katalogi według określonych parametrów i zwraca ścieżki do plików, które spełniają te kryteria.
Find:
- Przeszukuje system plików w czasie rzeczywistym.
- Jest bardziej uniwersalny i oferuje więcej opcji wyszukiwania.
- Może być wolniejszy, zwłaszcza w przypadku dużych systemów plików.
Czym jest locate?
Komenda locate to kolejne narzędzie do wyszukiwania plików, które działa jednak w nieco inny sposób. locate używa zindeksowanej bazy danych, w której przechowywane są ścieżki do plików. Dzięki temu wyszukiwanie za pomocą locate jest zazwyczaj szybsze niż przy użyciu find, ale wymaga regularnego aktualizowania bazy danych przez narzędzie updatedb.
Locate:
- Korzysta z bazy danych zawierającej informacje o wszystkich plikach w systemie.
- Jest szybszy niż
find, zwłaszcza w przypadku dużych systemów plików. - Baza danych musi być regularnie aktualizowana, aby była aktualna.
Kiedy i jak używać find i locate?
Kiedy używać find:
- Gdy szukasz pliku według kryteriów, które nie są dostępne w bazie danych
locate(np. rozmiar pliku, data modyfikacji, właściciel pliku). - Gdy potrzebujesz bardziej szczegółowych wyników wyszukiwania.
- Nie przeszkadza Ci wolniejsze tempo wyszukiwania.
Kiedy używać locate:
- Gdy szukasz pliku po nazwie.
- Szybko potrzebujesz znaleźć plik.
- Nie potrzebujesz tak szczegółowych wyników wyszukiwania jak w przypadku
find.
Jak używać find:
Podstawowa składnia polecenia find wygląda następująco:
find [opcje] ścieżka wyrażenie
Gdzie:
opcjeokreślają dodatkowe kryteria wyszukiwania.ścieżkaokreśla katalog, od którego rozpocznie się wyszukiwanie.wyrażenieokreśla wzorzec, do którego muszą pasować nazwy plików.
Na przykład następujące polecenie znajdzie wszystkie pliki o nazwie dokument.txt w bieżącym katalogu i jego podkatalogach:
find . -name "dokument.txt"
Możesz dowiedzieć się więcej o opcjach find i sposobach ich używania, czytając stronę man:
man find
Jak używać locate:
Podstawowa składnia polecenia locate wygląda następująco:
locate wzorzec
Gdzie:
wzórokreśla wzorzec, do którego muszą pasować nazwy plików.
Na przykład następujące polecenie znajdzie wszystkie pliki, których nazwy rozpoczynają się od tekst, w dowolnym miejscu systemu plików:
locate tekst
Możesz dowiedzieć się więcej o opcjach locate i sposobach ich używania, czytając stronę man:
man locate
Podsumowanie
Zarówno find, jak i locate są cennymi narzędziami do wyszukiwania plików w systemie Linux. Wybór odpowiedniego narzędzia zależy od konkretnych potrzeb.
Jeśli potrzebujesz bardziej szczegółowych wyników wyszukiwania lub szukasz plików według kryteriów niedostępnych w bazie danych locate, użyj find. Jeśli szukasz pliku po nazwie i potrzebujesz szybkich wyników, użyj locate.
Przeczytaj także, co pozwoli Ci rozszerzyć wiedzę: