logo

Jak znaleźć plik w systemie Linux | Znajdź polecenie

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?

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>
  • opcje: Dodatkowe ustawienia lub warunki wyszukiwania.
    • Przykład :find /path/to/search -type f -name '*.txt'>
  • wyrażenie: Kryteria filtrowania i lokalizowania plików.
    • Przykład :find /path/to/search -type d -name 'docs'>

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. ` +n> `>znajduje większe pliki, ` -n> `>znajduje mniejsze pliki. „ N ' mierzy rozmiar w znakach.

alfabet w liczbach

-mtime rz

Znajduje pliki na podstawie czasu modyfikacji. ` n> `>oznacza liczbę dni temu.

-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 -name`> . Wyszukuje pliki o określonej nazwie lub wzorcu, niezależnie od 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

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

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

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

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

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:

Zrzut ekranu-(548)

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

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

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:

  1. Thefind>polecenie rozpoczyna wyszukiwanie od bieżącego katalogu, łącznie ze wszystkimi jego podkatalogami.
  2. Dla każdego pliku (-type f>) znalezione w wyszukiwarce, plik-exec>opcja wykonujegrep>Komenda.
  3. Thegrep>polecenie wyszukuje określoną treść (wzorzec) w każdym pliku.
  4. 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!