Jeśli chodzi o znajdowanie plików i folderów efektywnie w systemie Linux, dostępne są dwa główne polecenia: find i locate. Obie mają swoje mocne strony i zastosowania. W tym przewodniku dowiesz się, jak wykorzystać te polecenia, aby szybko i celnie znaleźć potrzebne dane, czy to w katalogu domowym, czy na całym dysku.

Najważniejsze spostrzeżenia

  • locate jest szybsze, ponieważ korzysta z bazy danych, ale może być nieaktualne.
  • find przeszukuje bezpośrednio dysk twardy i jest zawsze aktualne, ale może być wolniejsze.
  • Oba polecenia oferują różne opcje do precyzowania Twoich zapytań.

Instrukcja krok po kroku

1. Pierwszy przegląd: locate

Rozpocznij wyszukiwanie od polecenia locate. Jest to szczególnie proste, gdy znasz dokładną nazwę lub część nazwy pliku. Załóżmy, że chcesz znaleźć plik „Słońce”. Przejdź do swojego katalogu głównego i wpisz następujące polecenie:

locate Słońce

To polecenie przeszuka wszystkie wpisy w bazie danych i wyświetli pliki zawierające frazę „Słońce”.

Efektywne znajdowanie plików i folderów w Linuxie

2. Ignorowanie wielkości liter

Chcesz zignorować wielkość liter w swoim wyszukiwaniu? W takim razie możesz użyć opcji -i:

locate -i słońce

W ten sposób otrzymasz listę, która zawiera zarówno „Słońce”, jak i „słońce”.

Efektywne znajdowanie plików i folderów w Linuksie

3. Precyzja dzięki wyrażeniom regularnym

Jeśli chcesz przeprowadzić dokładniejsze wyszukiwanie, możesz również użyć wyrażeń regularnych z locate. Na przykład, aby szukać tylko dokładnie „ls”, możesz użyć opcji -b w połączeniu z chronionymi nawiasami:

locate -b '/ls'

To sprawi, że otrzymasz tylko wyniki, które dokładnie odpowiadają „ls”.

Efektywne znajdowanie plików i folderów w Linuxie

4. Aktualizacja bazy danych

Jeśli utworzyłeś nowy plik i chcesz upewnić się, że locate go znajdzie, musisz zaktualizować bazę danych. Możesz to zrobić za pomocą polecenia:

sudo updatedb

To polecenie aktualizuje bazę danych i przynosi ją do najnowszego stanu.

Efektywne znajdowanie plików i folderów w systemie Linux

5. Użycie find

Polecenie find jest szczególnie przydatne, jeśli chcesz określić dokładniejsze kryteria wyszukiwania. Na przykład, aby wyszukiwać w katalogu domowym plik o nazwie „xyz”, możesz użyć następującego polecenia:

find ~/ -name 'xyz'

To przeszukuje tylko katalog domowy w poszukiwaniu „xyz”.

Efektywne znajdowanie plików i folderów w systemie Linux

6. Filtrowanie według typu pliku

Aby wyszukiwać tylko według określonych typów plików, możesz użyć opcji -type. Na przykład, aby znaleźć tylko katalogi:

find /var/log -type d

To polecenie wyświetli wszystkie katalogi w katalogu /var/log.

Efektywne znajdowanie plików i folderów w systemie Linux

7. Wyszukiwanie plików według rozmiaru

Jeśli chcesz wyszukiwać pliki na podstawie ich rozmiaru, możesz użyć opcji -size. Na przykład, aby znaleźć pliki większe niż 1 MB:

find / -type f -size +1M

To polecenie przeszukuje cały system w poszukiwaniu plików, które są większe niż 1 megabajt.

Efektywne znajdowanie plików i folderów w Linuksie

8. Wyszukiwanie plików w określonym okresie czasu

Możesz również wyszukiwać pliki, które zostały zmienione w określonym czasie. Na przykład, jeśli chcesz wyszukiwać pliki, które zostały zmienione w ciągu ostatnich 48 godzin, użyj:

find / -type f -mtime -2

„-mtime -2” oznacza pliki, które zostały zmienione w ciągu ostatnich dwóch dni.

Efektywne wyszukiwanie plików i folderów w systemie Linux

9. Kombinacje kryteriów wyszukiwania

Kombinacja wielu kryteriów wyszukiwania zwiększa precyzję Twoich zapytań. Możesz jednocześnie filtrować według typu pliku i daty ostatniej modyfikacji:

find /opt -type f -mtime -1

W ten sposób znajdziesz wszystkie pliki w katalogu /opt, które zostały zmienione w ciągu ostatnich 24 godzin.

Efektywne wyszukiwanie plików i folderów w Linuxie

10. Podsumowanie dotyczące wyszukiwania plików

Dzięki poleceniom find i locate jesteś dobrze przygotowany, aby efektywnie znajdować pliki i foldery w swoim systemie Linux. Możesz wybierać między szybkością a aktualnością bazy danych, w zależności od swoich potrzeb.

Streszczenie – wyszukiwanie plików i folderów w Linuxie – find i locate w szczegółach

Znajdowanie plików i folderów w Linuxie za pomocą find i locate to bułka z masłem. Oba polecenia oferują różne możliwości, aby dostosować wyszukiwanie do własnych potrzeb.

Najczęściej zadawane pytania

Jaka jest różnica między find a locate?find przeszukuje w czasie rzeczywistym dysk twardy, podczas gdy locate korzysta z bazy danych, przez co jest szybsze, ale może nie dostarczać aktualnych wyników.

Jak zaktualizować bazę danych locate?Możesz zaktualizować bazę danych locate za pomocą polecenia sudo updatedb.

Czy mogę używać find do wyszukiwania według rozmiaru pliku?Tak, to możliwe, korzystając z opcji -size.

Jak mogę zawęzić moje wyszukiwanie według nazw plików lub katalogów?Użyj opcji -name lub -type, aby celowo wyszukiwać konkretne nazwy lub typy plików.

Jakie jest przykładowe połączenie kryteriów wyszukiwania?Możesz użyć find, aby wyszukiwać pliki typu -type f i jednocześnie określić, że pliki zostały zmienione w ciągu ostatnich 24 godzin za pomocą -mtime -1.