Linux, znany z solidnego interfejsu wiersza poleceń, zapewnia zestaw potężnych narzędzi do wydajnego zarządzania plikami i katalogami. Wśród nich polecenie find wyróżnia się jako niezastąpiony atut, oferujący niezrównaną wszechstronność w wyszukiwaniu plików w oparciu o różnorodne kryteria. W tym artykule omówiono skuteczność polecenia find, rzucając światło na jego możliwości i to, w jaki sposób służy ono jako podstawowe narzędzie dla użytkowników Linuksa, którzy chcą szybko i skutecznie lokalizować pliki.
Spis treści
- Co to jest polecenie Znajdź w systemie Linux?
- Składnia polecenia Znajdź w systemie Linux:
- Opcje dostępne w poleceniu Znajdź w systemie Linux
- Jak znaleźć plik w systemie Linux z wiersza poleceń
- Przykłady polecenia Znajdź w systemie Linux
Co to jest polecenie Znajdź w systemie Linux?
Polecenie find w Linuksa to dynamiczne narzędzie przeznaczone do kompleksowego wyszukiwania plików i katalogów w strukturze hierarchicznej. Jego możliwości adaptacyjne pozwalają użytkownikom wyszukiwać według nazwy, rozmiaru, czasu modyfikacji lub treści, zapewniając elastyczne i skuteczne rozwiązanie. Jako kluczowy element Linia poleceń Linuksa w zestawie narzędzi polecenie find zaspokaja zróżnicowane potrzeby użytkowników, zapewniając precyzję eksploracji i wyszukiwania plików. Odkryj różnorodne funkcjonalności polecenia find i ulepsz swoje zarządzanie plikami wydajność na platformie Linux.
Składnia polecenia Znajdź w systemie Linux :
Oto składnia dlafind>
polecenie w systemie Linux:
find [path] [options] [expression]>
Tutaj,
- ścieżka: Katalog początkowy wyszukiwania.
- Przykład :
find /path/to/search>
- Przykład :
- opcje: Dodatkowe ustawienia lub warunki wyszukiwania.
- Przykład :
find /path/to/search -type f -name '*.txt'>
- Przykład :
- wyrażenie: Kryteria filtrowania i lokalizowania plików.
- Przykład :
find /path/to/search -type d -name 'docs'>
- Przykład :
Ta składnia umożliwia dostosowanie wyszukiwania plików poprzez określenie ścieżki, dodanie opcji i zdefiniowanie kryteriów wyszukiwania za pomocą wyrażeń.
Opcje dostępne w poleceniu Znajdź w systemie Linux
Oto ` find`>
opcje poleceń wraz z krótkim opisem ich przeznaczenia.
Komenda | Opis |
---|---|
-wzór imienia | Wyszukuje pliki o określonej nazwie lub wzorze. |
-typ typu | Określa typ pliku do wyszukania (np. f dla zwykłych plików, d dla katalogów). |
-rozmiar [+/-]n | Wyszukuje pliki na podstawie rozmiaru. ` alfabet w liczbach |
-mtime rz | Znajduje pliki na podstawie czasu modyfikacji. ` |
-exec polecenie {} ; | Wykonuje polecenie na każdym znalezionym pliku. |
-wydrukować | Wyświetla nazwy ścieżek plików spełniających określone kryteria. |
-maksymalne poziomy głębokości | Ogranicza wyszukiwanie do określonej głębokości katalogu. |
-poziomy głębokości | Określa minimalną głębokość katalogu dla wyszukiwania. |
-pusty | Znajduje puste pliki i katalogi. |
-usuwać algebra zbiorów | Usuwa pliki spełniające określone kryteria. |
-execdir polecenie {} ; | Wykonuje polecenie na każdym znalezionym pliku z katalogu zawierającego dopasowany plik. |
-iname wzór | Wersja `. bez rozróżniania wielkości liter |
Jak znaleźć plik w systemie Linux z wiersza poleceń
Używającfind>
polecenie jest proste. Aby znaleźć plik w systemie Linux, otwórz terminal i wykonaj następujące czynności podstawowa składnia:
find /path/to/search -options criteria>
Zastępować /path/to/search>
'>
z katalogiem, w którym chcesz rozpocząć wyszukiwanie, i dostosuj opcje i kryteria w oparciu o swoje wymagania.
Na przykład :
Aby znaleźć plik o nazwie example.txt w katalogu domowym, użyj:
find ~ -name 'example.txt'>
To polecenie zlokalizuje i wyświetli ścieżkę do pliku, jeśli istnieje on w określonym katalogu lub jego podkatalogach.
Przykłady polecenia Znajdź w systemie Linux
1. Jak znaleźć określony plik za pomocą polecenia „find” w systemie Linux
To zapytanie ma na celu wskazanie pliku w wyznaczonym katalogu. W podanym przykładzie szuka pliku o nazwie sample.txt w katalogu GFG.
find ./GFG -name sample.txt>
Thefind>
polecenie przechodzi przez określony katalog (./GFG>
) i szuka pliku o nazwie sample.txt. Jeśli zostanie znaleziony, wyświetla ścieżkę do pliku.
Wyjście:

Wyszukaj plik o określonej nazwie
2. Jak wyszukiwać pliki według wzorca za pomocą polecenia „find” w systemie Linux
To polecenie jest przeznaczone do wykrywania plików w katalogu, które mają określony wzorzec nazewnictwa. W tym przypadku identyfikuje pliki kończące się na „.txt” w katalogu GFG.
zestaw narzędzi wiosennych
find ./GFG -name *.txt>
Polecenie wyszukuje pliki o nazwach kończących się na „.txt” w katalogu GFG, prezentując listę pasujących plików.
Wyjście:

Wyszukaj plik ze wzorem
3. Jak znaleźć i potwierdzić usunięcie pliku za pomocą polecenia „find” w systemie Linux
To polecenie nie tylko lokalizuje określony plik, ale także pyta użytkownika o potwierdzenie przed rozpoczęciem jego usuwania. Przykład ma na celu usunięcie pliku o nazwie sample.txt w katalogu GFG.
find ./GFG -name sample.txt -exec rm -i {} ;>
The-exec>
opcja wykonujerm>
polecenie na zlokalizowanym pliku i-i>
flaga monituje użytkownika o potwierdzenie przed usunięciem. Po wprowadzeniu tego polecenia pojawi się monit o potwierdzenie, czy chcesz usunąć plik sample.txt, czy nie. jeśli wpiszesz „T/y”, plik zostanie usunięty.
Wyjście :

znajdź i usuń plik z potwierdzeniem
4. Wyszukaj puste pliki i katalogi za pomocą polecenia „find” w systemie Linux
To zapytanie jest dostosowane do wykrywania i wyświetlania pustych plików i katalogów w określonym katalogu.
find ./GFG -empty>
` find`>
polecenie identyfikuje i wyświetla listę wszystkich pustych folderów i plików w katalogu GFG lub jego podkatalogach.
Wyjście:

Szukaj pustych plików i katalogów
5. Wyszukaj pliki z określonymi uprawnieniami za pomocą polecenia „find” w systemie Linux
To polecenie służy do lokalizowania plików w katalogu o określonym uprawnienia . W podanym przykładzie identyfikuje pliki z uprawnieniami ustawionymi na 664 w katalogu GFG.
find ./GFG -perm 664>
Polecenie wyszukuje pliki w katalogu GFG z określonymi uprawnieniami (664) i wyświetla wyniki.
Wyjście:

Wyszukaj plik z wprowadzonymi uprawnieniami
6. Wyświetl hierarchię repozytoriów za pomocą polecenia „find” w systemie Linux
Polecenie to służy do wyświetlenia hierarchicznej struktury repozytoriów i podrepozytoriów w obrębie danego katalogu.
find . -type d>
To polecenie wyświetla wszystkie repozytoria i podrepozytoria obecne w bieżącym repozytorium. W poniższym przykładzie znajdujemy się obecnie w repozytorium techcodeview.com, które zawiera repozytorium Linux, które zawiera podrepo LinuxCmds, które dodatkowo zawiera repozytorium FindCmd. Dane wyjściowe poniższego polecenia cmd po prostu wyświetlają te informacje. Pamiętaj, że w tym przypadku, jeśli użyjesz polecenia ls cmd, wyświetli się tylko /Linux.
Wyjście:
10 z 10
7. Wyszukaj tekst w wielu plikach za pomocą polecenia „find” w systemie Linux
To polecenie jest przystosowane do wyszukiwania linii zawierających określony tekst w wielu plikach. Przykład szuka wierszy zawierających słowo „Geek” we wszystkich plikach „.txt” w bieżącym przypadku informator i jego podkatalogi.
find ./ -type f -name '*.txt' -exec grep 'Geek' {} ;>
Polecenie wyszukuje pliki „.txt” (-type f>
I-name '*.txt'>
) i używagrep>
aby wydrukować linie zawierające określony tekst („Geek”).
Wyjście:

Wyszukaj tekst w wielu plikach
8. Znajdź pliki według czasu ich modyfikacji Korzystanie z polecenia „znajdź” w systemie Linux
The-mtime>
opcja jest przydatna do wyszukiwania plików na podstawie czasu ich modyfikacji. Aby znaleźć pliki zmodyfikowane w ciągu ostatnich 7 dni, możesz użyć:
find /path/to/search -mtime -7>
To polecenie wyświetli listę plików zmodyfikowanych w ostatnim tygodniu.

Znajdowanie ostatnich modyfikacji
W tym przykładzie szukamy zmian w katalogu /home/administrator/Downloads, które zostały wykonane w ciągu ostatnich 7 dni.
9. Użyj Grepa, aby znaleźć pliki na podstawie zawartości Korzystanie z polecenia „znajdź” w systemie Linux
Łączeniefind>
polecenie z grep>
umożliwia wyszukiwanie plików na podstawie ich zawartości. Na przykład, aby znaleźć pliki zawierające wzorzec słów w bieżącym katalogu i jego podkatalogach, możesz użyć:
find . -type f -exec grep -l 'pattern' {} ;>
To polecenie wyświetli nazwy plików zawierających określoną treść.
Podział polecenia:
-
find .>
: Inicjuje wyszukiwanie od bieżącego katalogu (.>
). -
-type f>
: Określa, że wyszukiwanie dotyczy wyłącznie plików, z wyłączeniem katalogów. -
-exec grep -l 'pattern' {} ;>
: Wykonujegrep>
polecenie na każdym znalezionym pliku ({}>
), aby wyszukać określoną treść (wzorzec). The-l>
opcja wgrep>
zapewnia, że wyświetlane będą tylko nazwy plików zawierających wzorzec.
Wykonanie polecenia:
- The
find>
polecenie rozpoczyna wyszukiwanie od bieżącego katalogu, łącznie ze wszystkimi jego podkatalogami. - Dla każdego pliku (
-type f>
) znalezione w wyszukiwarce, plik-exec>
opcja wykonujegrep>
Komenda. - The
grep>
polecenie wyszukuje określoną treść (wzorzec) w każdym pliku. - Jeśli plik zawiera określoną treść, zostanie wyświetlona jego nazwa ze względu na
-l>
opcja wgrep>
.
Często zadawane pytania dotyczące polecenia Znajdź w systemie Linux
Czy mogę użyć polecenia find do wyszukiwania plików na podstawie ich zawartości w systemie Linux?
Tak, polecenie find można połączyć z poleceniem grep, aby wyszukiwać pliki na podstawie ich zawartości. W artykule przedstawiono przykład wykorzystania tej kombinacji do lokalizacji plików zawierających określony tekst.
Jak mogę wyszukać wszystkie katalogi w systemie Linux za pomocą polecenia find?
Użyj
-type d>
opcję określenia, że szukasz katalogów. Na przykład:find /path/to/search -type d>The
-type d>
flaga instruuje polecenie find, aby szukało katalogów. To polecenie wyświetli listę wszystkich katalogów w określonej ścieżce.
Jak mogę wyszukiwać pliki o określonej nazwie za pomocą polecenia find w systemie Linux?
Aby wyszukać pliki o określonej nazwie, możesz użyć metody
-name>
opcję za pomocą polecenia find. W artykule zamieszczono przykładową składnię wyszukiwania pliku o nazwie example.txt w katalogu domowym.
Czy mogę użyć polecenia find do wyszukiwania plików zawierających w swojej zawartości określony ciąg tekstowy?
Tak, możesz połączyć polecenie find z grep, aby wyszukiwać pliki na podstawie ich zawartości. Na przykład:
find /path/to/search -type f -exec grep -l 'specific_text' {} ;>To polecenie wykonuje grep na każdym znalezionym pliku (
{}>
) w wyszukiwaniu, wyszukując określony tekst (konkretny_tekst). The-l>
opcja w grep zapewnia, że wyświetlane będą tylko nazwy plików zawierających określony tekst.
Czy podczas wyszukiwania plików w systemie Linux w poleceniu find uwzględniana jest wielkość liter?
Domyślnie w poleceniu find rozróżniana jest wielkość liter. Jednak w artykule przedstawiono
-iname>
opcja jako wersja bez rozróżniania wielkości liter-name>
, umożliwiając użytkownikom wyszukiwanie plików o określonej nazwie lub wzorcu niezależnie od wielkości liter.c wartość logiczna
Wniosek
W tym artykule omówiliśmy polecenie find, które jest niczym sprawdzony przewodnik dotyczący wyszukiwania plików i zarządzania nimi. W tym artykule omówiono, w jaki sposób polecenie find może lokalizować pliki na podstawie różnych kryteriów, od nazw po treść. To jak posiadanie supermocy umożliwiającej szybkie i elastyczne porządkowanie i przeszukiwanie plików. Niezależnie od tego, czy jesteś doświadczonym użytkownikiem Linuksa, czy dopiero zaczynasz, opanowanie polecenia find zmienia zasady gry, jeśli chodzi o wydajną obsługę plików w wierszu poleceń. To niezbędne narzędzie, dzięki któremu nawigacja po plikach na komputerze staje się dziecinnie prosta!