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

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 dla find> 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.

-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ć

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ąc find> 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 

The find> 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.

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 wykonuje rm> 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)

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żywa grep> 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

Łączenie find> 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' {} ;> : Wykonuje grep> polecenie na każdym znalezionym pliku ( {}> ), aby wyszukać określoną treść (wzorzec). The -l> opcja w grep> zapewnia, że ​​wyświetlane będą tylko nazwy plików zawierających wzorzec.

Wykonanie polecenia:

  1. The find> 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 wykonuje grep> Komenda.
  3. The grep> 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 w grep> .

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.

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!



Najpopularniejsze Artykuły

Kategoria

Ciekawe Artykuły