3 sposoby znajdowania plików w systemie Linux

Spisu treści:

3 sposoby znajdowania plików w systemie Linux
3 sposoby znajdowania plików w systemie Linux

Wideo: 3 sposoby znajdowania plików w systemie Linux

Wideo: 3 sposoby znajdowania plików w systemie Linux
Wideo: Jak Na Zawsze Zablokować Niechciane E-Maile Z Ofertami Handlowymi i Reklamami 2024, Listopad
Anonim

Znalezienie plików w systemie Linux może być trudne, jeśli nie wiesz jak. Najlepszym sposobem na znalezienie plików w systemie Linux jest użycie kilku poleceń terminala. Opanowanie niektórych z tych poleceń może zapewnić pełną kontrolę nad plikami i są one bardziej przydatne niż proste funkcje wyszukiwania w innych systemach operacyjnych.

Krok

Metoda 1 z 3: Korzystanie z funkcji „znajdź”

690519 1
690519 1

Krok 1. Wyszukaj pliki według nazwy

Ten typ wyszukiwania jest najbardziej podstawowy i możesz to zrobić za pomocą polecenia find. Poniższe polecenie wykona wyszukiwanie na podstawie słowa wprowadzonego w katalogu, w którym się znajdujesz, a także podkatalogów w nim zawartych.

find -iname "nazwa pliku"

Jeśli użyjesz -iname zamiast -name, różnica między słowami kluczowymi wielkimi i małymi literami nie będzie działać. Polecenie -name traktuje wielkie i małe litery jako różne znaki

690519 2
690519 2

Krok 2. Ustaw wyszukiwanie, aby rozpoczynało się w katalogu głównym

Jeśli chcesz przeprowadzić wyszukiwanie w całym systemie, możesz dodać modyfikator / do słowa kluczowego. Modyfikator nakazuje poleceniu find, aby dokładnie przeszukało, zaczynając od katalogu głównego.

znajdź / -iname "nazwa pliku"

  • Możesz rozpocząć wyszukiwanie w określonym katalogu, zastępując modyfikator / ścieżką katalogu, na przykład /home/pat.
  • Możesz użyć. inny niż /, aby wyszukiwania były wykonywane tylko w katalogu, w którym się znajdujesz, a także w podkatalogach w nim zawartych.
690519 3
690519 3

Krok 3. Użyj symboli wieloznacznych

* aby wyszukać wszystko, co częściowo pasuje do Twoich słów kluczowych.

Znaku wieloznacznego * można użyć do znalezienia plików, których pełnych nazw nie znasz, lub jeśli chcesz znaleźć wszystkie pliki z określonym rozszerzeniem.

znajdź /home/pat -iname "*.conf"

  • Powyższe polecenie zwróci wszystkie pliki.conf w katalogu użytkownika o nazwie Pat (jak również znajdujące się w nim podkatalogi).
  • Możesz go również użyć, aby znaleźć wszystko, czego nazwa częściowo pasuje do tego słowa kluczowego. Na przykład, jeśli masz dużo dokumentów związanych z wikiHow, możesz je znaleźć, wpisując "*wiki*".
690519 4
690519 4

Krok 4. Ułatw sobie zarządzanie wynikami wyszukiwania

Jeśli wyników wyszukiwania jest zbyt wiele, znalezienie odpowiedniego pliku będzie trudne. Użyj znaku | i wyślij wyniki wyszukiwania z powrotem do programu filtrującego „mniej”. W ten sposób możesz łatwiej przewijać i filtrować wyniki wyszukiwania.

znajdź /home/pat -iname "*.conf" | mniej

690519 5
690519 5

Krok 5. Znajdź wyniki wyszukiwania z określonym typem

Możesz użyć modyfikatorów, aby zwrócić tylko niektóre typy wyników. Możesz wyszukiwać zwykłe pliki (f), katalogi (d), dowiązania symboliczne (l), urządzenia znakowe (c) i urządzenia blokowe (b) za pomocą odpowiednich modyfikatorów.

find / -type f -iname "nazwa pliku"

690519 6
690519 6

Krok 6. Filtruj wyniki wyszukiwania według rozmiaru

Jeśli masz wiele plików o podobnych nazwach, ale znasz rozmiar żądanego pliku, możesz filtrować wyszukiwanie według rozmiaru.

find / -size +50M -iname "nazwa pliku"

  • Powyższe polecenie zwróci wyniki wyszukiwania o wielkości co najmniej 50 megabajtów. Możesz użyć + lub -, aby wyszukać pliki o większym lub mniejszym rozmiarze. Pominięcie znaku + lub - powoduje, że wyszukiwanie zwraca tylko wyniki o naprawdę „poprawnym” rozmiarze.
  • Wyszukiwanie można filtrować według bajtów (c), kilobajtów (k), megabajtów (M), gigabajtów (G) lub 512 bajtów (b). Należy pamiętać, że oznaczenia rozróżniają wielkie i małe litery.
690519 7
690519 7

Krok 7. Użyj operatorów logicznych do łączenia filtrów wyszukiwania

Do łączenia różnych wyszukiwań można używać operatorów -i, -lub i -not.

find /travelphotos -type f -size +200k -not -iname "*2015*"

Powyższe polecenie wyszuka pliki w katalogu „travelphotos”, które mają rozmiar ponad 200 kilobajtów, ale nie zawierają słowa „2015” w nazwie

690519 8
690519 8

Krok 8. Przeprowadź wyszukiwanie plików według nazwy właściciela lub uprawnień

Jeśli próbujesz znaleźć określony plik, który należy do określonego użytkownika lub szukasz pliku z określonymi uprawnieniami, możesz zawęzić wyszukiwanie.

find / -user pat -iname "nazwapliku" find / -group users -iname "nazwapliku" find / -perm 777 -iname "nazwapliku"

Powyższe przykłady przeprowadzą wyszukiwanie określonego użytkownika, grupy lub uprawnienia w ramach słowa kluczowego. Możesz również pominąć nazwę pliku, aby zwrócić wszystkie pliki pasujące do tego typu. Na przykład find / -perm 777 zwróci wszystkie pliki z uprawnieniami 777 (bez ograniczeń)

690519 9
690519 9

Krok 9. Połącz polecenia, aby wykonać akcję po znalezieniu pliku

Możesz połączyć polecenie find z innymi poleceniami, aby móc przetwarzać pliki zwrócone przez słowo kluczowe za pomocą tego polecenia. Oddziel polecenie find i drugie polecenie flagą -exec, a następnie zakończ wiersz {};

odnaleźć. -type f -perm 777 -exec chmod 755 {};

Powyższe polecenie przeszuka katalog, w którym się znajdujesz (i wszystkie znajdujące się w nim podkatalogi) w poszukiwaniu plików z uprawnieniami 777. Następnie polecenie chmod zmieni uprawnienia na 755

Metoda 2 z 3: Korzystanie z funkcji „zlokalizuj”

690519 10
690519 10

Krok 1. Zainstaluj

Znajdź funkcjonalność. Komenda locate jest zazwyczaj szybsza niż komenda find ze względu na wykorzystanie bazy danych w systemie plików. Nie wszystkie typy Linuksa są wyposażone w funkcję lokalizowania, więc wprowadź następujące polecenie, aby ją zainstalować:

  • Wpisz sudo apt-get update, a następnie naciśnij Enter.
  • Możesz zainstalować go na Debianie i ubuntu w następujący sposób: Wpisz sudo apt-get install mlocate, a następnie naciśnij Enter. Jeśli funkcja lokalizowania została zainstalowana wcześniej, zobaczysz komunikat mlocate to już najnowsza wersja.
  • W Arch Linux użyj menedżera pakietów pacman: pacman -Syu mlocate
  • W przypadku Gentoo użyj emerge: emerge mlocate
690519 11
690519 11

Krok 2. Aktualizacja

Znajdź Baza danych Ty. Polecenie zlokalizowania nie będzie w stanie niczego znaleźć, dopóki nie zostanie utworzone i zaktualizowane. Proces jest zwykle wykonywany codziennie automatycznie, ale można go również zaktualizować ręcznie. Musisz to zrobić, jeśli chcesz jak najszybciej korzystać z funkcji lokalizowania.

Wpisz sudo updatedb, a następnie naciśnij Enter

690519 12
690519 12

Krok 3. Użyj

Znajdź wykonać proste wyszukiwanie.

Funkcja lokalizowania działa szybko, ale nie ma tylu opcji, co polecenie find. Podstawowe wyszukiwanie plików można przeprowadzić w podobny sposób do polecenia find.

zlokalizuj -i "*.jpg"

  • Powyższe polecenie przeszuka cały system w poszukiwaniu plików z rozszerzeniem.jpg. Symbol wieloznaczny * działa podobnie do polecenia find.
  • Podobnie jak polecenie find, modyfikator -i sprawia, że wielkie i małe litery w słowach kluczowych są traktowane tak samo.
690519 13
690519 13

Krok 4. Ogranicz wyniki wyszukiwania

Jeśli wyszukiwanie zwraca tak wiele wyników, że trudno jest z nich skorzystać, możesz zmniejszyć te wyniki za pomocą modyfikatora -n, po którym podaje się liczbę wyników, które chcesz zwrócić.

zlokalizuj -n 20 -i "*.jpg"

  • Zostanie wyświetlonych tylko 20 wyników wyszukiwania.
  • Możesz także użyć | wysyłanie wyników wyszukiwania do programu mniej filtrującego w celu łatwiejszego przewijania wyników.

Metoda 3 z 3: Wyszukiwanie tekstu w plikach

690519 14
690519 14

Krok 1. Użyj polecenia

grep aby znaleźć ciąg tekstowy w pliku.

Jeśli szukasz pliku zawierającego określoną frazę lub ciąg znaków, możesz użyć polecenia grep. Podstawowe polecenie grep ma następujący format:

grep -r -i "zapytanie wyszukiwania" /ścieżka/do/katalogu/

  • Modyfikator -r sprawia, że wyszukiwanie jest „rekurencyjne”, więc przeszukanie zostanie wykonane w katalogu i wszystkich jego podkatalogach, aby znaleźć pliki zawierające tekst ze słowem kluczowym search.
  • Modyfikator -i wskazuje, że słowo kluczowe wyszukiwania nie rozróżnia wielkich i małych liter. Jeśli chcesz wymusić na wyszukiwaniu rozróżnienie wielkich i małych liter, zignoruj modyfikator -i.
690519 15
690519 15

Krok 2. Usuń nadmiar tekstu

Podczas wyszukiwania grep jak powyżej zobaczysz nazwę pliku z podświetlonymi pasującymi literami. Możesz ukryć pasujący tekst i pokazać tylko nazwę i ścieżkę katalogu plików, dodając:

grep -r -i "słowo kluczowe wyszukiwania" /ścieżka/do/katalogu/ | wyciąć -d: -f1

690519 16
690519 16

Krok 3. Ukryj komunikat o błędzie

Komenda grep zwróci błąd podczas próby dostępu do katalogu bez odpowiednich uprawnień lub podczas wchodzenia do pustego katalogu. Możesz wysyłać komunikaty o błędach do /dev/null, aby się nie pojawiały.

grep -r -i "słowo kluczowe wyszukiwania" /ścieżka/do/katalogu/ 2>/dev/null

Zalecana: