Znajdź polecenie w Linux z praktycznymi przykładami
- 1451
- 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.