Większość użytkowników próbujących znaleźć pliki i foldery na komputerze z systemem Linux korzysta z menedżera plików. Zwykle narzędzia wyszukiwania menedżera plików mogą znaleźć to, czego potrzebują użytkownicy – do pewnego stopnia. Problem w tym, że bywają powolne i wybredne. Aby uzyskać bardziej zaawansowane wyszukiwanie plików w systemie Linux, rozważ przejście do terminala.
OSTRZEŻENIE SPOILERA: Przewiń w dół i obejrzyj samouczek wideo na końcu tego artykułu.
W tym przewodniku omówimy kilka łatwych sposobów szybkiego i wydajnego wyszukiwania plików i folderów za pomocą terminala Linux.
1. Znajdź i Grep
Find to potężne narzędzie wyszukiwania dla pulpitu Linux. Działa w wierszu poleceń, uruchamiając zapytania wyszukiwania na podstawie słów kluczowych określonych przez użytkownika. Znajdowanie jest bardzo złożone, w wyniku czego wielu z niego korzysta. Oto jak używać funkcji znajdź. Najpierw otwórz terminal i uruchom find. Zauważysz, że narzędzie wyświetla listę prawie każdego pliku na komputerze. Dobrze, że find przegląda tak dużo, ale problem z uruchomieniem go w ten sposób polega na tym, że nigdy nie będziesz w stanie znaleźć tego, czego szukasz.
Aby lepiej wykorzystać narzędzie wyszukiwania, rozważ połączenie go razem z kilkoma poleceniami. W szczególności grep. Grep jest również bardzo potężny, a dzięki niemu użytkownicy mogą odfiltrowywać określone słowa kluczowe. Połączenie tego z find to niesamowita kombinacja. Na przykład, aby znaleźć pliki i foldery oznaczone jako pliki „bitcoin” na komputerze z systemem Linux, należy:
znajdź | grep bitcoin
Grep odfiltrowuje znajdź i pokazuje nam tylko wyniki zawierające słowo kluczowe „bitcoin”.
Działa również z określonymi rozszerzeniami plików. Na przykład, aby znaleźć każdy plik PNG na komputerze z systemem Linux, uruchom polecenie find i grep w następujący sposób:
find | grep .png
Prawdopodobnie na komputerze z systemem Linux znajduje się mnóstwo plików PNG, więc aby lista była bardziej przyjazna dla użytkownika, potokuj więcej jako trzecie polecenie.
find | grep .png | more
2. Mlocate
Mlocate to kolejne bardzo przydatne polecenie. Prawdopodobnie jest bardziej przyjazny dla użytkownika niż znaleźć. Lokalizowanie działa lepiej, ponieważ umożliwia lepsze wyszukiwanie za pomocą słów kluczowych. Nie ma potrzeby używania dodatkowych opcji poleceń ani rzeczy takich jak grep, aby to wykonać. Niestety narzędzie lokalizacyjne nie jest wstępnie instalowane w każdej dystrybucji Linuksa. Oto jak to skonfigurować. Najpierw zainstaluj oprogramowanie na swoim komputerze.
Ubuntu
sudo apt install mlocate
Debian
sudo apt-get install mlocate
Arch Linux
sudo pacman -S mlocate
Fedora
sudo dnf install mlocate
OpenSUSE
sudo zypper install mlocate
Po zainstalowaniu oprogramowania otwórz terminal i użyj polecenia updatedb, aby utworzyć nową bazę danych. Utworzenie nowej bazy danych jest wymagane lub polecenie locate zakończy się błędem i odmówi działania. Pamiętaj, że baza danych skanuje WSZYSTKIE PLIKI na twoim komputerze, więc musi być uruchamiana jako root, a nie zwykłe polecenie użytkownika.
sudo updatedb
Polecenie updatedb trwa dość długo, w zależności od szybkości dysku twardego, a także liczby plików w systemie. Pozostaw terminal otwarty i uruchom polecenie. Dowiesz się, że baza danych jest gotowa do pracy, gdy terminal ponownie zaakceptuje wprowadzanie tekstu.
Aby wyszukiwać za pomocą narzędzia lokalizacji, postępuj zgodnie z poniższym przykładem. Pamiętaj, aby zmienić „nazwę pliku” lub „słowo kluczowe” na własne wyszukiwane hasła, ponieważ są to tylko symbole zastępcze.
locate filename
lub
locate keyword
lub
locate "*.FileExtension"
Po wprowadzeniu wyszukiwanego terminu locate sprawdzi bazę danych i zwróci wyniki. Jeśli jest wiele rzeczy do przejrzenia, rozważ przesłanie wyników do pliku tekstowego na później.
locate keyword >> locate-keyword-results.txt
Filtruj plik tekstowy Mlocate
Przekierowanie wyniku wyszukiwania do pliku tekstowego to dobry sposób na przechowywanie zaległych wyników wyszukiwania do wykorzystania w przyszłości. Jeśli chcesz przefiltrować te wyniki wyszukiwania, spróbuj użyć razem polecenia cat i grep.
Na przykład, aby przefiltrować poprzednie wyniki wyszukiwania w celu zlokalizowania wszystkich plików MP3 na moim komputerze, polecenie brzmi:
cat locate-mp3-results.txt | grep "mp3 keyword"
Grep odfiltruje dokładnie potrzebny plik.
3. LS i Grep
Oprócz korzystania z narzędzia wyszukiwania do przeszukiwania komputera z systemem Linux, istnieją inne sposoby wyszukiwania plików. Głównym sposobem na zrobienie tego w terminalu jest użycie polecenia ls (aka List). To narzędzie jest proste, ale wyświetla wszystkie elementy w katalogu. Może to być bardzo przydatne, jeśli chcesz znaleźć określony folder. Jednak samo ls może być strasznie nieefektywne. Aby ulepszyć to polecenie, rozważ połączenie go z grep. W ten sposób łatwiej będzie odfiltrować foldery lub pliki, których szukasz. A przynajmniej odfiltruj ją do kilku słów kluczowych.
Najpierw użyj polecenia cd, aby przejść do katalogu, w którym szukasz określonych plików lub folderów.
Następnie połącz ls i grep.
ls | grep keyword
Alternatywnie, niech ls ujawni również ukryte foldery, używając:
ls -a | grep keyword