Jak znaleźć pliki w wierszu poleceń Ubuntu


Częstym problemem jest to, że nie możesz znaleźć plików, które gdzieś umieściłeś. Podczas pracy pod Linuksem, niezależnie od dystrybucji, wiele opcji GUI umożliwia wyszukiwanie plików. Jednak w wielu przypadkach będziesz mieć terminal wiersza poleceń, zwłaszcza jeśli zarządzasz serwerami lub używasz SSH, aby uzyskać dostęp do systemu. Jeśli nie możesz znaleźć swoich plików, musisz je wyszukać za pomocą aplikacji wiersza polecenia w systemie Linux.

W tym artykule pokazano, jak znaleźć pliki za pomocą terminala, który jest aplikacją wiersza polecenia w systemie Ubuntu. Istnieją trzy dobrze znane metody wyszukiwania plików w powłoce:

  1. Używając Znajdź polecenie
  2. Używając Znajdź Polecenie
  3. Używając Grep polecenie

Znajdź i zlokalizuj polecenia do wyszukiwania plików w systemie, podczas gdy grep służy do wyszukiwania pliku na podstawie zawartego w nim tekstu. Znajdź jest wolniejszą metodą, ale zawiera kilka warunków wyszukiwania, podczas gdy Lokalizacja nie zawiera tylu warunków, ale jest znacznie szybsza niż Znajdź.

Rozpocznijmy procedurę. Użyjemy Ubuntu 18.04 LTS do opisu procedury wymienionej w tym artykule.

Metoda 1: Korzystanie z polecenia Znajdź

Znajdź to wysoce elastyczne polecenie służące do wyszukiwania plików w oparciu o różne warunki. Jest to bardzo pomocne narzędzie podczas wyszukiwania pliku, dla którego nie pamiętasz nazwy pliku. Za pomocą polecenia Znajdź możesz wyszukiwać na podstawie nazwy pliku i folderu, daty utworzenia, daty modyfikacji i uprawnień. Możesz połączyć te wiele warunków w jednym poleceniu Znajdź. Jest to bardzo potężne, ale wolniejsze narzędzie wyszukiwania.

Ogólna składnia polecenia to:

$ find /path/to/file/ -iname filename

Wyszukiwanie plików w określonym katalogu

Za pomocą polecenia Znajdź można wyszukiwać wszystkie pliki w określonym katalogu. Ogólna składnia to:

$ find /path/to/file/

Na przykład, aby znaleźć wszystkie pliki w katalogu / home / tin / Downloads / , uruchom Terminal, naciskając Ctrl + Alt + T i następnie uruchom następującą komendę w Terminalu:

$ find /home/tin/Downloads/

Wyszukaj pliki w bieżącym katalogu

Aby wyszukać pliki w bieżącym katalogu, użyj

$ find .

Aby wyszukać plik o nazwie np. „oprogramowanie” pod bieżącym w katalogu użyj następującej komendy w terminalu:

$ find . -iname Softwares

Wyszukaj za pomocą symbolu wieloznacznego

Można również użyć symboli wieloznacznych, aby znaleźć pliki pasujące do zapytania. Ogólna składnia to:

$ find /path/to/file/ -iname filename*

Aby na przykład wyszukać pliki rozpoczynające się od słowa „cent”, uruchom następującą komendę w terminalu:

$ find /home/tin/ -iname cent*

Wyszukaj puste pliki

Możesz także wyszukać puste pliki za pomocą polecenia Znajdź. Ogólna składnia to:

$ find /path/to/file/ -iname -empty

Aby na przykład znaleźć puste pliki w katalogu / home / tin , uruchom następującą komendę w Terminalu:

$ find /home/tin/ -empty

Wyszukaj według daty i godziny

Za pomocą polecenia Znajdź możesz także wyszukiwać pliki w zależności od tego, kiedy były one otwierane lub modyfikowane. Istnieją rodzaje czasu, który możesz wykorzystać na wyszukiwanie plików:

  • mtime (czas modyfikacji) : kiedy zawartość pliku została zmodyfikowana po raz ostatni.
  • atime (czas dostępu) : kiedy plik był ostatnio otwierany.
  • ctime (Zmień czas) : kiedy atrybuty pliku zostały zmodyfikowane ostatnim razem.

Na przykład, aby wyszukać pliki w bieżącym katalogu, które zostały zmodyfikowane mniej niż 2 dni temu, uruchom następującą komendę w terminalu:

$ find . -mtime -2

Aby wyszukać pliki, do których uzyskano dostęp niecałe 2 dni temu, uruchom następujące polecenie w terminalu:

$ find . –atime -2

Aby wyszukać pliki, które zostały zmienione mniej niż 2 dni temu, uruchom następujące polecenie w terminalu:

$ find . –ctime -2

Wyszukaj na podstawie rozmiaru pliku

Na przykład, aby wyszukać plik którego rozmiar jest większy niż 5 MB, możemy użyć następującego polecenia w Terminalu:

$ find . –size +5M\

Wyszukiwanie na podstawie uprawnień do plików

Służy do wyszukiwania plików z określonymi uprawnieniami. Ogólna składnia to:

$ find /path/to/file/ -type -perm mode

Gdzie:

Typ parametr obejmuje d lub f wartość, która jest używana do określania typu pliku. d dla katalogów i f tylko dla plików.
mode może mieć albo uprawnienie numeryczne (np. 777, 655 .. itd.) albo pozwolenie symboliczne (np. u = x, a = r + x).

Na przykład, aby wyszukać plik za zgodą 644, możemy użyć następującego polecenia w Terminalu:

$ find . –type f –perm 644

Metoda 2: Korzystanie z polecenia Zlokalizuj

Istnieje inne polecenie Zlokalizuj, którego można użyć do wyszukiwania pliki w systemie Linux. Nie ma tylu warunków wyszukiwania, jakie oferuje narzędzie Find, ale jest znacznie lepsze i szybsze niż narzędzie Find. Powodem jest proces działający w tle, który faktycznie działa w systemie i wyszukuje i przechowuje nowe pliki we własnej bazie danych. W przeciwieństwie do polecenia Znajdź, nie przeszukuje lokalnego dysku twardego w poszukiwaniu plików i katalogów, ale przeszukuje je we własnej bazie danych. Baza danych powinna być regularnie aktualizowana, aby narzędzie do wyszukiwania działało.

Instalowanie Locate

Locate nie jest instalowane domyślnie w systemie operacyjnym Linux. Będziesz musiał ręcznie zainstalować. Naciśnij Ctrl + Alt + T , aby uruchomić terminal, a następnie wpisz następujące polecenie jako sudo, aby zainstalować narzędzie Locate:

$ sudo apt-get install locate

Po zakończeniu instalacji możesz od razu użyć narzędzia Locate.

Ogólna składnia polecenia to:

$ locate –i filename

Gdzie -i służy do ignorowania rozróżnienia wielkości liter.

Wyszukiwanie pliku

Na przykład, aby wyszukać nazwę pliku „centos”, użyj następującego polecenia w terminalu:

$ locate –i centos

Spowoduje to wyszukanie wszystkich plików zawierających ciąg „centos” w nazwach plików .

Wyszukaj wiele plików

Możesz także wyszukiwać wiele nazw plików jednocześnie. Na przykład użyj następującego polecenia w Terminalu, aby wyszukać dwa pliki „ sdn.txt” i „ centos” :

$ locate –i sdn.txt centos

Wyszukaj za pomocą symbolu wieloznacznego

Można również użyć znaku wieloznacznego znaleźć pliki pasujące do zapytania. Na przykład, aby wyszukać wszystkie pliki, które kończą się na „.iso ”, użyj następującego polecenia w terminalu:

$ locate –i *.iso

Zaktualizuj zlokalizuj bazę danych

Zlokalizuj polecenie, aby jego baza danych działała, więc musi być regularnie aktualizowana. Uruchom następującą komendę w Terminalu, aby zaktualizować bazę danych narzędzia Locate:

$ sudo updatedb

Metoda 3: Korzystanie z komendy Grep

Chociaż Grep nie służy do bezpośredniego wyszukiwania plików w systemie, zamiast tego służy do wyszukiwania tekstu. Można go jednak użyć do wyświetlenia nazw plików zawierających określony ciąg znaków pasujący do zapytania. Aby wyszukać ciąg, musisz zawrzeć go w cudzysłowie.

Ogólna składnia polecenia to:

$ grep [opcje] [wzorzec] [/ ścieżka / do / pliku]
gdzie [opcje] zawiera ogólne opcje kontroli wyszukiwania i [wzorzec ] zawiera ciąg znaków, który chcemy wyszukać.

Jeśli szukasz pliku zawierającego słowo, które - jak podejrzewasz - może znajdować się w dowolnym określonym katalogu, możesz wyszukać je, korzystając z powyższej składni komend w terminalu.

Na przykład, aby wyszukać plik zawierający słowo „tintin” i uważamy, że ten plik może znajdować się w folderze Pobrane , możemy użyć następującego polecenia, aby zlokalizować ten plik.

$ grep -r –i “tintin” /home/tin/Downloads

Gdzie

-i służy do ignorowania rozróżnienia wielkości liter

–r służy do rekursywnego wyszukiwania określonego katalogu

Wyszukiwanie wielu słów

Można również wyszukiwać wiele ciągów jednocześnie. Musisz użyć odwrotnego ukośnika „\” i znaku potoku „|” między swoimi łańcuchami.

Na przykład, aby wyszukać dwa ciągi „tintin” i „ping”, możemy użyć następującego polecenia w terminalu:

$ grep –r –I “tintin\|ping” /home/tin/Downloads

To był krótki przegląd tego, jak szukać plików za pomocą wiersza polecenia w Ubuntu. W tym artykule widzieliśmy trzy przydatne metody wiersza poleceń do wyszukiwania plików. Możesz wybrać jedną z tych metod w zależności od prędkości wyszukiwania i warunków.

Komentarze