Strona główna > Konsola, Polecenia > find – wyszukiwanie plików

find – wyszukiwanie plików

Zdarza się czasami, że nie wiemy gdzie się podział ten … plik. Mało tego chcielibyśmy w dodatku przeprowadzić na takim pliku jakieś operacje. Do tego może nam posłużyć polecenie o nazwie find.

Możliwości jakie oferuje nam polecenie find są ogromne, ale postaram się zawęzić trochę temat, aby pokazać to co wydaję się być celem wpisu.

Przejdę zatem do samej esencji i zaprezentuję składnię polecenia, a przedstawia się ona następująco:

find [ścieżka] [opcje]

Najbardziej przydatnymi opcjami przy wyszukiwaniu plików mogą być:

-maxdepth poziom – maksymalna głębkość jaka obejmie przeszukiwane katalogi

-mindepth poziom – minimalna głębokość przeszukiwania

-liczba – oznacza wartość mniejszą niż ta podana

+liczba – oznacza wartość większą niż ta podana

liczba – oznacza wartość równą podanej

-amin liczba_minut – dostęp do pliku był o określonej ilości minut temu

-atime wartość – ostatni dostęp do pliku był wartość*24 godzin temu

-group nazwa_grupy – nazwa grupy do której należy plik

-mmin n  – dotyczy pliku, który był modyfikowany n minut temu

-mtime n – dotyczy pliku, który był modyfikowany n*24 (godziny) temu

-name nazwa – określa nazwę pliku jakiego szukamy (lub wyrażenie)

-size n[kMG] -tutaj możemy zdefiniować rozmiar pliku jakiego poszukujemy, przy czym k oznacza kilobajty, M megabajty, a G gigabajty

-type typ – określa jakiego rodzaju szukamy pliku, czyli d katalog, f zwykły plik

-user użytkownik – określa do jakiego użytkownika ma należeć szukany plik

Po opisaniu kilku mniej lub bardziej przydatnych opcji postaram się zaprezentować kilka przykładów.

Zacznijmy od najprostszego przykładu:

find ~ -name plik

Powyższe polecenie wyszuka w naszym katalogu domowym wszystkich plików oraz folderów o nazwie „plik”.

find ~ -type d -name folder

Powyższe polecenie wyszuka w naszym katalogu domowym wszystkich folderów o nazwie „folder”.

find ~ -type f -size +20M -name *.avi

Powyższe polecenie wyszuka w naszym katalogu domowym plików z rozszerzeniem avi większych niż 20 megabajtów.

find ~ -type f  -size +50M -name *.avi -exec mv '{}' ~/filmy \;

Powyższe polecenie w katalogu domowym wyszuka wszystkie pliki z rozszerzeniem avi, większe niż 50MB, a następnie przeniesie je do katalogu filmy.

find ./ -type d -user test -name *

Powyższe polecenie wyszukuje wszystkich folderów w bieżącym katalogu, których właścicielem jest uzytkownik o nazwie „test”.

find ./ -mmin -25 -name *test*

Powyższe polecenie wyszuka pliku lub katalogu o nazwie zawierającej słowo „test”, przy czym plik lub katalog muszą spełniać jeszcze jeden warunek: ich edycja musiała nastąpić do 25 od czasu zatwierdzenia polecenia.

Jak zwykle zachęcam do lektury podręcznika man (polecenie: man find). Życzę powodzenia i owocnych ćwiczeń z konsolą.

  1. Brak komentarzy.
  1. No trackbacks yet.

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Log Out / Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Log Out / Zmień )

Facebook photo

Komentujesz korzystając z konta Facebook. Log Out / Zmień )

Google+ photo

Komentujesz korzystając z konta Google+. Log Out / Zmień )

Connecting to %s

%d bloggers like this: