table of contents
other languages
other sections
| FIND(1) | General Commands Manual | FIND(1) | 
NAZWA¶
find - szuka plików w hierarchii katalogowejSKŁADNIA¶
find [ścieżka...] [wyrażenie]OPIS¶
Uwaga! To tłumaczenie może być nieaktualne! Ta strona podręcznika man opisuje wersję GNU programu find. find przeszukuje drzewo katalogowe, zakorzenione w każdej z podanych nazw plików. Wykonuje przy tym podane wyrażenie od lewej do prawej, zgodnie z zasadami priorytetów (zobacz sekcję OPERATORY), aż do ustalenia wyniku (lewa strona jest fałszywa dla operacji and, a prawdziwa dla or), co powoduje przejście do następnej nazwy pliku. Pierwszy argument, rozpoczynający się od `-', `(', `)', `,' lub `!' jest uważany za początek wyrażenia; wszelkie argumenty przed nim są ścieżkami przeszukiwania, a wszystkie argumenty po nim są resztą wyrażenia. Jeśli nie podano ścieżek, używany jest katalog bieżący. Jeśli nie podano wyrażenia, używane jest wyrażenie `-print'. find kończy działanie ze statusem 0 tylko gdy wszystkie pliki zostaną poprawnie przetworzone. W przeciwnym wypadku status jest większy od zera.WYRAŻENIA¶
Wyrażenie jest złożone z opcji (które tyczą się raczej ogólnego działania, niż przetwarzania konkretnego pliku i zawsze zwracają prawdę), testów (które sprawdzają wartość prawdy lub fałszu) i akcji (które mają efekty uboczne i zwracają wartość prawdziwą lub fałszywą); wszystkie te elementy są rozdzielone operatorami. -and jest domyślnym operatorem, przyjmowanym w przypadku pominięcia go w jawnym zapisie. Jeśli wyrażenie nie zawiera innych akcji niż -prune, to na wszystkich plikach, dla których jest ono prawdziwe, wykonywany jest -print.OPCJE¶
Wszystkie opcje zawsze zwracają prawdę. Zawsze działają, tzn. nie są przetwarzane jedynie gdy osiągnięta zostanie ich pozycja w wyrażeniu. Dlatego, dla jasności najlepiej umiejscawiać je na początku wyrażenia.- -daystart
 - Mierzy czasy (dla -amin, -atime, -cmin, -ctime, -mmin, and -mtime) od dziś, a nie od 24 godzin temu.
 
- -depth
 - Przetwarza zawartość każdego katalogu przed samym katalogiem jako takim.
 
- -follow
 - Rozwikłuje dowiązania symboliczne. Wymusza -noleaf.
 
- -help, --help
 - Wypisuje sposób użycia find z wiersza poleceń i kończy pracę programu.
 
- -maxdepth głębokość
 - Schodzi maksymalnie głębokość (nieujemna liczba całkowita) poziomów katalogów od argumentów wiersza poleceń. `-maxdepth 0' oznacza, by testy i akcje stosować tylko do argumentów wiersza poleceń.
 
- -mindepth lgłębokość
 - Nie stosuje testów lub akcji w poziomach niższych niż głębokość (nieujemna liczba całkowita). `-mindepth 1' oznacza przetwarzanie wszystkich plików poza argumentami wiersza poleceń.
 
- -mount
 - Nie zagłębia się w katalogi na innych systemach plików. Jest to alternatywna nazwa dla -xdev, stworzona dla zgodności z innymi wersjami find.
 
- -noleaf
 - Zakazuje optymalizacji wykonywanej przez zakładanie, że katalogi zawierają o dwa mniej podkatalogi niż ich licznik twardych dowiązań. Opcja ta jest wymagana podczas przeszukiwania systemów plików, które nie używają uniksowej konwencji wiązania katalogów, takich jak systemy plików CD-ROM, MS-DOS czy wolumenów AFS. Każdy katalog w normalnym systemie uniksowym zawiera przynajmniej dwa twarde dowiązania: jego nazwę i `.'. Dodatkowo, jego podkatalogi mogą mieć dowiązania `..'. Gdy find testuje katalog po zbadaniu funkcją stat o 2 mniej podkatalogów niż licznik dowiązań, wie, że reszta wpisów jest niekatalogowa. Jeśli testowane mają być tylko nazwy plików, to nie ma potrzeby ich sprawdzać; daje to znaczące przyspieszenie.
 
- -version, --version
 - Wypisuje wersję i kończy pracę.
 
- -xdev
 - Nie zagłębia się w katalogi na innych systemach plików.
 
TESTY¶
Wartości numeryczne mogą być podawane jako- +n
 - dla większych niż n,
 
- -n
 - dla mniejszych niż n,
 
- n
 - dla równych n.
 
- -amin n
 - Dostęp do pliku nastąpił ostatnio n minut temu.
 
- -anewer plik
 - Do pliku ostatnio dostano się wcześniej niż plik został zmodyfikowany. -anewer podlega -follow tylko jeśli -follow pojawia się w linii komend przed -anewer.
 
- -atime n
 - Do pliku dostano się po raz ostatni n*24 godzin temu.
 
- -cmin n
 - Status pliku został zmieniony n minut temu.
 
- -cnewer plik
 - Status pliku był ostatnio zmieniony wcześniej niż zmodyfikowano plik. -cnewer podlega -follow tylko jeśli -follow pojawia się w linii komend przed -cnewer.
 
- -ctime n
 - Status pliku zmienił się ostatnio n*24 godzin temu.
 
- -empty
 - Plik jest pusty i jest albo plikiem regularnym, albo katalogiem.
 
- -false
 - Zawsze fałszywe.
 
- -fstype typ
 - Plik jest na systemie plików o typie typ. Prawidłowe typy systemów plików różnią się na różnych wersjach Uniksa; ich niekompletna lista, która jest przyjmowana w części systemów to: ufs, 4.2, 4.3, nfs, tmp, mfs, S51K, S52K. Aby zobaczyć typy twoich systemów plików, użyj -printf z dyrektywą %F.
 
- -gid n
 - Numeryczny GID pliku to n.
 
- -group nazwag
 - Plik należy do grupy nazwag (numeryczny GID jest dopuszczalny).
 
- -ilname pattern
 - Podobne do -lname, lecz dopasowania są niewrażliwe na rozmiar liter.
 
- -iname pattern
 - Podobne do -name, lecz dopasowanie jest niewrażliwe na rozmiar liter. Na przykład wzorce `fo*' i `F??' dopasują się do nazw `Foo', `FOO', `foo', `fOo', itd.
 
- -inum n
 - Plik ma numer iwęzła n.
 
- -ipath wzorzec
 - Podobne do -path, lecz dopasowanie jest niewrażliwe na rozmiar liter.
 
- -iregex wzorzec
 - Podobne do -regex, lecz dopasowanie jest niewrazliwe na rozmiar liter.
 
- -links n
 - Plik ma n dowiązań.
 
- -lname wzorzec
 - Plik jest dowiązaniem symbolicznym, którego zawartość odpowiada wzorcowi powłoki wzorzec. Metaznaki nie traktują specjalnie `/' i `.'.
 
- -mmin n
 - Dane pliku były ostatnio modyfikowane n minut temu.
 
- -mtime n
 - Dane pliku były ostatnio modyfikowane n*24 godzin temu.
 
- -name wzorzec
 - Podstawa nazwy pliku (z usuniętą ścieżką i poprzedzającymi katalogami) odpowiada wzorcowi powłoki wzorzec. Metaznaki (`*', `?', `[]') nie odpowiadają `.' na początku nazwy pliku. Aby zignorować katalogi i pliki im podległe, użyj -prune; zobacz przykład w opisie -path.
 
- -newer plik
 - Plik został zmodyfikowany wcześniej niż plik. -newer podlega -follow tylko jeśli -follow znajduje się w linii komend przed -newer.
 
- -nouser
 - Do numerycznego UID pliku nie pasuje żaden użytkownik.
 
- -nogroup
 - Do numerycznego GID pliku nie pasuje żadna grupa.
 
- -path wzorzec
 - Nazwa pliku odpowiada wzorcowi powłoki wzorzec.
      Metaznaki nie traktują specjalnie `/' lub `.'; tak więc na
      przykład,
    
find . -path './sr*sc'
wypisze wpis katalogowy o nazwie './src/misc' (jeśli taki istnieje). Aby zignorować całe drzewo katalogowe, użyj -prune. Na przykład, aby pominąć katalog `src/emacs' i wszystkie jego pliki oraz wypisać nazwy innych znalezionych plików, użyj:
find . -path './src/emacs' -prune -o -print
 
- -perm prawa
 - Bity praw pliku są dokładnie równe prawom (ósemkowym lub symbolicznym). Prawa symboliczne używają 0 jako punktu wyjścia.
 
- -perm -prawa
 - wszystkie bity prawa są ustawione dla pliku.
 
- -perm +prawa
 - Któryś z bitów praw jest ustawiony dla pliku.
 
- -regex wzorzec
 - Nazwa pliku odpowiada wyrażeniu regularnemu wzorzec. Dopasowanie stosuje się do całej ścieżki, nie dla przeszukiwanej. Na przykład, aby dopasować plik o nazwie `./fubar3', możesz użyć wyrażenia regularnego `.*bar' lub `.*b.*3'.
 
- -size n[bckw]
 - Plik zajmuje n jednostek miejsca. Jednostki to domyślnie 512-bajtowe bloki. Jeśli doklejona jest litera `c', jest to n bajtów, jeśli `k', kilobajtów, jeśli `w', dwubajtówych słów. Rozmiar nie wlicza niebezpośrednich bloków, lecz liczy bloki w plikach `sparse', które w rzeczywistości nie są zajęte.
 
- -true
 - Zawsze prawda.
 
- -type c
 - Plik jest typu c:
 
- b
 - blokowy (buforowany) plik specjalny
 
- c
 - znakowy (niebuforowany) plik specjalny
 
- d
 - katalog
 
- p
 - łącze nazwane (FIFO)
 
- f
 - zwykły plik
 
- l
 - dowiązanie symboliczne
 
- s
 - gniazdo
 
- -uid n
 - Numeryczny UID pliku to n.
 
- -used n
 - Do pliku ostatnio dostano się n dni po zmianie jego statusu.
 
- -user unazwa
 - Właścicielem pliku jest użytkownik unazwa (numeryczny UID jest tu dozwolony).
 
- -xtype c
 - Jest to to samo co -type, chyba że plik jest dowiązaniem symbolicznym. Dla dowiązań symbolicznych: jeśli nie podano -follow, jest prawdziwe gdy plik jest dowiązaniem do pliku typu c; jeśli podano -follow, jest prawdziwe, jeśli c to `l'. Innymi słowy, dla dowiązań symbolicznych -xtype sprawdza typ pliku, którego nie sprawdza -type.
 
AKCJE¶
- -exec polecenie ;
 - Wykonuje polecenie; prawdziwe jeśli zwrócony został status 0. Wszelkie następne argumenty find są brane za argumenty polecenia, aż nie zostanie napotkany argument, składający się z `;'. Łańcuch `{}' jest podmieniany na obecnie przetwarzaną nazwę pliku. Obydwie te konstrukcje być może będą wymagały wycytowania (znakiem `\') aby uchronić je przed rozwinięciem przez powłokę. Polecenie jest wykonywane w katalogu startowym.
 
- -fls plik
 - Prawdziwe; podobne do -ls, lecz zapisuje do pliku jak -fprint.
 
- -fprint plik
 - Prawdziwe; wypisuje pełną nazwę pliku do pliku. Jeśli plik nie istnieje, zostanie utworzony; jeśli istnieje, zostanie obcięty. Nazwy plików ``/dev/stdout'' i ``/dev/stderr'' są traktowane osobno; odnoszą się one odpowiednio do standardowego wyjścia i standardowego wyjścia błędów.
 
- -fprint0 plik
 - Prawdziwe; podobne do -print0, lecz zapisuje do pliku, podobnie jak -fprint.
 
- -fprintf plik format
 - Prawdziwe; podobne do -printf, lecz zapisuje do pliku, podobnie jak -fprint.
 
- -ok polecenie ;
 - Podobne do -exec, lecz pyta wpierw użytkownika (na standardowym wejściu); jeśli odpowiedź nie rozpoczyna się od `y' lub `Y', nie uruchamia polecenia i zwraca fałsz.
 
- Prawdziwe; wypisuje pełną nazwę pliku na standardowe wyjście. Za nazwą daje nową linię.
 
- -print0
 - Prawdziwe; wypisje pełną nazwę pliku na standardowe wyjście. Za nazwą daje znak null. Umożliwia to poprawne wyświetlenie plików, zawierających w nazwach znaki nowej linii w programach, przetwarzających wyjście finda.
 
- -printf format
 - Prawdziwe; wypisuje format na standardowe wyjście, interpretując sekwencje specjalne `\' i dyrektywy `%'. Szerokości pól i precyzje mogą być podawane dokładnie jak w printf(3) z C. W przeciwieństwie do -print, -printf nie dodaje nowej linii do końca łańcucha. Sekwencje specjalne i dyrektywy to:
 
- \a
 - Dzwonek.
 
- \b
 - Backspace.
 
- \c
 - Wstrzymuje wtypisywanie tego formatu i natychmiast wymiata wyjście.
 
- \f
 - Form feed.
 
- \n
 - Nowa linia.
 
- \r
 - Powrót karetki.
 
- \t
 - Tabulacja pozioma.
 
- \v
 - Tabulacja pionowa.
 
- \\
 - Literalny lewy ukośnik (`\').
 
- %%
 - Literalny znak procenta.
 
- %a
 - Ostatni czas dostępu do pliku w formacie zwracanym przez funkcję ctime(3).
 
- %Ak
 - Ostatni czas dostępu do pliku, w formacie okreslonym przez k, którym może być `@', lub dyrektywa dla funkcji C strftime(3). Możliwe wartości k są wymienione niżej; niektóre z nich mogą nie być dostępne na wszystkich systemach z powodu różnic w strftime(3) między systemami.
 
- @
 - Sekundy od 1 stycznia, 1970, 00:00 GMT.
 
- H
 - godzina (00..23)
 
- I
 - godzina (01..12)
 
- k
 - godzina ( 0..23)
 
- l
 - godzina ( 1..12)
 
- M
 - minuta (00..59)
 
- p
 - localowe AM lub PM
 
- r
 - czas, 12-godzinny (gg:mm:ss [AP]M)
 
- S
 - sekunda (00..61)
 
- T
 - czas, 24-godzinny (gg:mm:ss)
 
- X
 - lokalna reprezentacja czasu (G:M:S)
 
- Z
 - strefa czasowa (np. EDT), lub nic jeśli nie da się jej określić
 
- a
 - lokalny skrót nazwy tygodnia (Sun..Sat)
 
- A
 - lokalna pełna nazwa tygodnia, zmiennej długości (Sunday..Saturday)
 
- b
 - lokalna skrócona nazwa miesiąca (Jan..Dec)
 
- B
 - lokalna pełna nazwa miesiąca, zmiennej długości (January..December)
 
- c
 - lokalna data i czas (Sat Nov 04 12:02:33 EST 1989)
 
- d
 - dzień miesiąca (01..31)
 
- D
 - data (mm/dd/rr)
 
- h
 - to samo co b
 
- j
 - dzień roku (001..366)
 
- m
 - miesiąc (01..12)
 
- U
 - numer tygodnia w roku, z niedzielą liczoną jako pierwszy dzień tygodnia (00..53)
 
- w
 - dzień tygodnia (0..6)
 
- W
 - numer tygodnia w roku, licząc z poniedziałkiem, jako pierwszym dniem tygodnia (00..53)
 
- x
 - lokalna reprezentacja daty (mm/dd/rr)
 
- y
 - ostatnie dwie cyfry roku (00..99)
 
- Y
 - rok (1970...)
 
- %b
 - Rozmiar pliku w 512-bajtowych blokach (zaokrąglanych w górę).
 
- %c
 - Ostatni czas zmiany statusu pliku, w formacie zwróconym przez funkcję ctime(3) z C.
 
- %Ck
 - Ostatni czas zmiany statusu pliku w formacie określonym przez k, w taki sam sposób, jak dla %A.
 
- %d
 - Głębokość pliku w drzewie katalogowym; 0 oznacza plik w argumencie wiersza poleceń.
 
- %f
 - Nazwa pliku z usuniętymi początkowymi katalogami (tylko ostatni element nazwy).
 
- %F
 - Rodzaj systemu plików, na którym znajduje się plik; wartość ta może być używana do -fstype.
 
- %g
 - Nazwa grupy pliku lub numeryczny GID jeśli grupa nie ma nazwy.
 
- %G
 - Numeryczny GID pliku.
 
- %h
 - Początkowe katalogi nazwy pliku (wszystko poza ostatnim elementem).
 
- %H
 - Argument wiersza poleceń, pod którym plik został znaleziony.
 
- %i
 - Numer iwęzła pliku (dziesiętnie).
 
- %k
 - Rozmiar pliku w 1K blokach (zaokrąglane w górę).
 
- %l
 - Obiekt dowiązania symbolicznego (pusty łańcuch, jeśli plik nie jest dowiązaniem symbolicznym).
 
- %m
 - Prawa pliku (ósemkowo).
 
- %n
 - Liczba twardych dowiązań do pliku.
 
- %p
 - Nazwa pliku.
 
- %P
 - Nazwa pliku z usuniętą z początku nazwą argumentu wiersza poleceń, dla którego ją znaleziono.
 
- %s
 - Rozmiar pliku w bajtach.
 
- %t
 - Ostatni czas modyfikacji pliku w formacie zwróconym przez funkcję ctime(3) z C.
 
- %Tk
 - Ostatni czas modyfikacji pliku, w formacie określonym przez k, podobnie jak dla %A.
 
- %u
 - Nazwa użytkownika pliku, lub numeryczny UID, jeśli użytkownik nie ma nazwy.
 
- %U
 - Numeryczny UID pliku.
 
- -prune
 - Jeśli nie podano -depth, prawdziwe; program nie
      wchodzi w głąb bieżącego katalogu.
    Jeśli podano -depth, fałszywe; bez rezultatu.
 
- -ls
 - Prawdziwe; listuje plik bieżący w formacie `ls ils' na standardowe wyjście. Liczniki bloków są 1K blokami, chyba że ustawiono zmienną środowiskową POSIXLY_CORRECT, kiedy używane będą 512-bajtowe bloki.
 
OPERATORY¶
Wymienione w malejącym priorytecie:- ( wyraż )
 - Wymusza pierwszeństwo.
 
- ! wyraż
 - Prawdziwe jeśli wyraż jest fałszywe
 
- -not wyraż
 - To samo co ! wyraż.
 
- wyraż1 wyraż2
 - And (jawny); wyraż2 nie jest analizowany jesli wyraż1 jest fałszywe.
 
- wyraż1 -a wyraż2
 - To samo, co wyraż1 wyraż2.
 
- wyraż1 -and wyraż2
 - To samo, co wyraż1 wyraż2.
 
- wyraż1 -o wyraż2
 - Or; wyraż2 nie jest analizowane jeśli wyraż1 jest prawdziwe.
 
- wyraż1 -or wyraż2
 - To samo, co wyraż1 -o wyraż2.
 
- wyraż1 , wyraż2
 - Lista; zarówno wyraż1 jak i wyraż2 zawsze są analizowane. Wartość wyraż1 jest niszczona; wartość listy jest wartością wyraż2.
 
ZOBACZ TAKŻE¶
locate(1L), locatedb(5L), updatedb(1L), xargs(1L) Znajdowanie plików (on-line w Info, lub w postaci wydrukowanej)INFORMACJE O TŁUMACZENIU¶
Powyższe tłumaczenie pochodzi z nieistniejącego już Projektu Tłumaczenia Manuali i może nie być aktualne. W razie zauważenia różnic między powyższym opisem a rzeczywistym zachowaniem opisywanego programu lub funkcji, prosimy o zapoznanie się z oryginalną (angielską) wersją strony podręcznika za pomocą polecenia:- man --locale=C 1 find