Znajdź polecenie w Linux z praktycznymi przykładami
- 1412
- 275
- Natan Cholewa
Polecenie Find to wszechstronne i potężne narzędzie w systemie Linux, umożliwiając użytkownikom wyszukiwanie plików i katalogów na podstawie różnych kryteriów, takich jak nazwa, typ, rozmiar, czas modyfikacji i wiele innych. Opanowanie polecenia Find może znacznie poprawić wydajność i skuteczność podczas pracy z systemami Linux. W tym artykule zawiera kompleksowy przewodnik po komendzie Find, w towarzystwie praktycznych przykładów.
Znajdź składnię polecenia i opcje
Podstawowa składnia polecenia Find jest następująca:
Znajdź [ścieżkę] [wyrażenie]1 | Znajdź [ścieżkę] [wyrażenie] |
- ŚCIEŻKA: Katalog, w którym można rozpocząć wyszukiwanie.
- WYRAŻENIE: Kryteria wyszukiwania, w tym opcje i testy.
Niektóre typowe opcje obejmują:
-nazwa
: Wyszukaj pliki na podstawie ich nazwy lub wzoru.-typ
: Wyszukaj pliki na podstawie ich typu (e.G., regularne pliki, katalogi, linki symboliczne).-rozmiar
: Wyszukaj pliki na podstawie ich rozmiaru.-MTime
: Wyszukaj pliki na podstawie ich czasu modyfikacji.-użytkownik
: Wyszukaj pliki na podstawie ich właściciela.-Grupa
: Wyszukaj pliki na podstawie ich grupy.
Znalezienie plików według nazwy
Aby wyszukać pliki według nazwy lub wzoru, użyj -nazwa
Opcja, a następnie nazwa pliku lub wzór zamknięty w pojedynczych cytatach.
- Wyszukiwanie wrażliwe na sprawę:
Znajdź/ścieżka/to/Directory -name 'nazwa pliku.tekst'
- Wyszukiwanie wrażliwe na przypadki:
Znajdź/ścieżka/do/Directory -Iname 'nazwa pliku.tekst'
- Korzystanie z dzikich kart:
Znajdź/ścieżka/to/Directory -name '*.tekst'
Znalezienie plików według typu:
Aby wyszukać pliki na podstawie ich typu, użyj -typ
opcja, a następnie specyfikator typu pliku.
- Zwykłe pliki:
Znajdź/ścieżka/do/Directory -Type f
- KATALOMY:
Znajdź/ścieżka/do/Directory -Type d
- Symboliczne linki:
Znajdź/ścieżka/do/Directory -Type L
Znalezienie plików według rozmiaru:
Aby wyszukać pliki na podstawie ich rozmiaru, użyj -rozmiar
opcja, a następnie operator porównawczy (+, -, lub =
) i rozmiar pliku.
- Pliki większe niż 1 MB:
Znajdź/ścieżka/do/Directory -Size +1M
- Pliki mniejsze niż 10 kb:
Znajdź/ścieżka/do/Directory -Size -10K
- Pliki dokładnie 512 bajtów:
Znajdź/ścieżka/do/Directory -Size 512c
Znalezienie plików według czasu modyfikacji:
Aby wyszukać pliki na podstawie ich czasu modyfikacji, użyj -MTime
opcja, a następnie operator porównawczy (+, -, lub =
) i liczba dni.
- Pliki zmodyfikowane w ciągu ostatnich 7 dni:
Znajdź/ścieżka/do/katalog -mtime -7
- Pliki nie są zmodyfikowane w ciągu ostatnich 30 dni:
Znajdź/ścieżka/do/katalog -mtime +30
- Pliki zmodyfikowane dokładnie 14 dni temu:
Znajdź/ścieżka/do/katalog -mtime 14
Znalezienie plików właściciela i grupy:
Aby wyszukać pliki na podstawie ich właściciela lub grupy, użyj -użytkownik
Lub -Grupa
Opcja, a następnie nazwa użytkownika lub nazwa grupy.
- Pliki należące do użytkownika „John”:
Znajdź/ścieżka/do/Directory -user John
- Pliki należące do „programistów” grupy:
Znajdź/ścieżka/do/Directory -Group Dewelopers
Wykonanie poleceń na znalezionych plikach:
Aby wykonywać działania na znalezionych plikach, użyj -Exec
opcja, a następnie polecenie i para kręconych aparatów ortodontycznych () jako symbol zastępczy ścieżki pliku. Polecenie powinno zostać zakończone półkolisem (
;
), które należy uciec lub otrzymać w pojedynczych cytatach.
- Usuwanie znalezionych plików:
Znajdź/ścieżka/to/Directory -name '*.bak '-exec rm \;
- Przeprowadzka znalezione pliki do konkretnego katalogu:
Znajdź/ścieżka/to/Directory -name '*.log '-exec mv /ścieżka/do/docel \;
- Zmiana uprawnień do plików:
Znajdź/ścieżka/do/Directory -Type f -exec chmod 644 \;
Łączenie wielu kryteriów wyszukiwania:
Aby połączyć wiele kryteriów wyszukiwania, użyj operatorów logicznych, takich jak -I
, -Lub
, I -nie
.
- Znajdź pliki większe niż 1 MB i zmodyfikowane w ciągu ostatnich 7 dni:
Znajdź/ścieżka/do/Directory -Size +1m -i -mtime -7
- Znajdź pliki należące do 'Jan' lub należący do „Programiści” Grupa:
Znajdź/ścieżka/do/Directory -User John -or -Grupa programistów
- Znajdź wszystkie pliki z wyłączeniem osób z '.TMP ' rozszerzenie:
Znajdź/ścieżka/to/Directory -not -name '*.TMP '
Advanced Find Techniques Command:
- Korzystanie z wzorców regularnych z poleceniem Find:
Znajdź/ścieżka/do/Directory -Type f -egex '.*\.\ (txt \ | log \) '
- Znalezienie i obsługa zepsutych symbolicznych linków:
Znajdź/ścieżka/do/katalog -type l -xtype l -exec rm \;
- Wyszukiwanie w określonych katalogach lub wykluczenie niektórych katalogów:
Znajdź/ścieżka/do/katalog -path '/ścieżka/to/exclude/*' -prune -or -name '*.txt '-print
Najlepsze praktyki korzystania z polecenia Find:
- Rozpocznij wyszukiwanie od najbardziej konkretnego katalogu, aby zoptymalizować proces wyszukiwania.
- Użyj mądrego przyrody i wzorców regularnych, aby udoskonalić wyniki wyszukiwania.
- Sprawdź swoje kryteria wyszukiwania przed wykonywaniem poleceń na znalezionych plikach, aby uniknąć niezamierzonych działań.
- Zawsze uciekaj lub cytuj postacie specjalne, takie jak przestrzenie, wsporniki i półkolony, aby zapewnić dokładną interpretację przez powłokę.
Wniosek
Opanowanie polecenia Find w Linux ma kluczowe znaczenie dla wydajnego wyszukiwania i zarządzania plikami w systemie. Rozumiejąc jego składnię, opcje i praktyczne przykłady, możesz poprawić swoją biegłość w korzystaniu z tego potężnego użyteczności. Pamiętaj, aby przestrzegać najlepszych praktyk podczas korzystania z polecenia Find, aby upewnić się, że wyszukiwania są dokładne i skuteczne.