Provided by: manpages-pl_4.23.1-1_all bug

NAZWA

       find - szuka plików w hierarchii katalogowej

SKŁADNIA

       find [-H] [-L] [-P] [-D opcje-debugowania] [-Opoziom] [punkt-początkowy...] [wyrażenie]

OPIS

       Ta  strona  podręcznika  man  opisuje  wersję GNU programu find.  GNU find przeszukuje drzewo katalogowe,
       zakorzenione w każdej z podanych punktów początkowych. Wykonuje przy tym podane  wyrażenie  od  lewej  do
       prawej,  zgodnie  z  zasadami  priorytetów (rozdział 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. Jeśli nie
       podano punktu początkowego, przyjmuje się ".".

       W przypadku używania find w środowisku, w którym istotne jest  bezpieczeństwo  (np.  przy  przeszukiwaniu
       katalogów,  które  są  zapisywalne  dla  innych użytkowników), należy zapoznać się z rozdziałem "Security
       Considerations" w dokumentacji findutils, pod nazwą Finding Files. Dokument  ten  (w  języku  angielskim)
       jest  bardziej  szczegółowy  i opisowy niż niniejsza strona podręcznika systemowego, więc może okazać się
       przydatniejszym źródłem informacji.

OPCJE

       Opcje -H, -L i -P kontrolują sposób traktowania dowiązań symbolicznych. Kolejne argumenty wiersza poleceń
       powinny być plikami lub katalogami do przeszukania,  aż  do  pierwszego  argumentu  rozpoczynającego  się
       znakiem  "-" albo argumentu "(" lub "!". Argumenty te (razem z następnymi) są rozpoznawane jako wyrażenie
       opisujące to, co ma zostać przeszukane. Jeśli nie zostanie podana ścieżka, użyty będzie bieżący  katalog.
       W  przypadku  braku  wyrażenia, używane jest domyślne wyrażenie -print (lecz wówczas i tak zapewne lepsze
       byłoby skorzystanie z -print0).

       This manual page talks about `options' within the expression list.  These options control  the  behaviour
       of  find  but are specified immediately after the last path name.  The five `real' options -H, -L, -P, -D
       and -O must appear before the first path name, if at all.  A double dash -- could theoretically  be  used
       to signal that any remaining arguments are not options, but this does not really work due to the way find
       determines  the end of the following path arguments: it does that by reading until an expression argument
       comes (which also starts with a `-').  Now, if a path argument would start with a `-',  then  find  would
       treat  it  as  expression argument instead.  Thus, to ensure that all start points are taken as such, and
       especially to prevent that wildcard patterns expanded by the calling shell are not mistakenly treated  as
       expression arguments, it is generally safer to prefix wildcards or dubious path names with either `./' or
       to use absolute path names starting with '/'.  Alternatively, it is generally safe though non-portable to
       use the GNU option -files0-from to pass arbitrary starting points to find.

       -P     Nigdy nie podąża za dowiązaniami symbolicznymi. Jest to zachowanie domyślne. Gdy find sprawdza lub
              wypisuje informacje o plikach, a jest on dowiązaniem symbolicznym, to użyta informacja powinna być
              wzięta z właściwości samego dowiązania symbolicznego.

       -L     Podąża  za  dowiązaniami  symbolicznymi.  Gdy  find sprawdza lub wypisuje informacje o plikach, to
              powinny być one wzięte z właściwości pliku, na który wskazuje  dowiązanie  symboliczne,  a  nie  z
              samego  dowiązania  (chyba,  że jest to zerwane dowiązanie symboliczne lub find nie może sprawdzić
              pliku, na który wskazuje dowiązanie). Użycie tej opcji implikuje -noleaf. Jeśli użyje się  później
              -P,  to  -noleaf  wciąż  będzie  działać.  Jeśli  działa  -L,  a find podczas wyszukiwania odkryje
              dowiązanie symboliczne do podkatalogu, to  przeszukany  zostanie  podkatalog,  na  który  wskazuje
              dowiązanie.

              When  the  -L  option  is in effect, the -type predicate will always match against the type of the
              file that a symbolic link points to rather than the link  itself  (unless  the  symbolic  link  is
              broken).   Actions  that  can  cause  symbolic links to become broken while find is executing (for
              example -delete)  can give rise to confusing behaviour.  Using -L causes the  -lname  and  -ilname
              predicates always to return false.

       -H     Nie  podąża za dowiązaniami symbolicznymi, z wyjątkiem przetwarzania argumentów wiersza polecenia.
              Gdy find sprawdza lub wypisuje informacje o plikach, powinny być one brane  z  właściwości  samego
              dowiązania  symbolicznego.  Jedynym  wyjątkiem  jest sytuacja, gdy plik podany w wierszu polecenia
              jest dowiązaniem symbolicznym i może być ono rozwiązane. Wówczas informacja jest brana z tego,  na
              co  wskazuje  dowiązanie  (tj.  podąża  się  za  dowiązaniem). Informacja z samego dowiązania jest
              używana w razie, gdy plik, na który wskazuje dowiązanie nie może być sprawdzony. Gdy działa  -H  i
              jedna  ze  ścieżek  podanych  w  wierszu  polecenia  jest  dowiązaniem  symbolicznym  do katalogu,
              sprawdzana jest zawartość tego katalogu (zapobiegnie temu skorzystanie z -maxdepth 0).

       Jeśli podano więcej niż jedną z opcji -H, -L i -P, każda  przesłania  poprzednią  -  liczy  się  ostatnia
       podana w wierszu polecenia, Ponieważ opcja -P jest domyślna, powinno się ją uznać za działającą, chyba że
       podano -H lub -L.

       GNU find często sprawdza status plików podczas przetwarzania samego wiersza polecenia, przed rozpoczęciem
       właściwego  przeszukiwania.  Opcje te mogą również wpływać na sposób przetworzenia argumentów. Co więcej,
       istnieje wiele testów, które porównują pliki z wiersza polecenia do aktualnie rozważanego pliku. W każdym
       przypadku, plik podany w wierszu polecenia będzie  sprawdzony  i  niektóre  z  jego  właściwości  zostaną
       zachowane. Jeżeli nazwany plik jest w rzeczywistości dowiązaniem symbolicznym, a działa opcja -P (lub nie
       podano  -H,  ani  -L),  to  informacja  użyta  do  porównania  zostanie  wzięta  z właściwości dowiązania
       symbolicznego. W przeciwnym razie, właściwości będą wzięte z pliku, na który wskazuje dowiązanie.  Jeżeli
       find  nie  może  podążyć  za  dowiązaniem  (np.  ponieważ  ma niewystarczające uprawnienia lub dowiązanie
       wskazuje na nieistniejący plik) zostaną użyte właściwości samego dowiązania.

       When the -H or -L options are in effect, any symbolic links listed as the  argument  of  -newer  will  be
       dereferenced,  and the timestamp will be taken from the file to which the symbolic link points.  The same
       consideration applies to -newerXY, -anewer and -cnewer.

       Opcja -follow ma podobne działanie do -L, choć działa tylko w miejscu pojawienia się (tj.  jeśli  -L  nie
       jest  użyte,  a  skorzystano  z  -follow,  to  wszystkie dowiązania symboliczne pojawiające się w wierszu
       poleceń za -follow zostaną rozwiązane, lecz umieszczone wcześniej - nie).

       -D debugopts
              Wyświetla informacje diagnostyczne - może okazać się przydatna do zdiagnozowania  przypadków,  gdy
              find  nie  robi  tego  czego  od  niego oczekujemy. Lista opcji debugowania powinna być oddzielona
              przecinkami. Nie gwarantuje się kompatybilności opcji debugowania  pomiędzy  wydaniami  findutils.
              Pełną listę prawidłowych opcji debugowania wyświetli polecenie find -D help. Są to między innymi:

              exec   Wyświetla informacje diagnostyczne związane z -exec, -execdir, -ok i -okdir.

              opt    Wyświetla  informacje  diagnostyczne  związane z optymalizację drzewka wyrażeń; patrz opcja
                     -O.

              rates  Wyświetla podsumowanie wskazujące częstość sukcesu lub porażki każdego wskazania.

              search Informuje o przechodzeniu przez drzewo katalogów.

              stat   Wyświetla komunikaty o plikach sprawdzanych przez wywołania systemowe stat i lstat. Program
                     find stara się zminimalizować liczbę takich wywołań.

              tree   Wyświetla drzewko wyrażeń w formie oryginalnej i zoptymalizowanej.

              all    Włącza wszystkie inne opcje debugowania (poza help).

              help   Objaśnia opcje debugowania.

       -Opoziom
              Włącza optymalizację zapytań. Program find zmienia kolejność testów,  aby  przyspieszyć  wykonanie
              przy  zachowaniu  efektu końcowego; tj. nie zmienia się wskazań z efektami ubocznymi w stosunku do
              każdego innego. Optymalizacje są przeprowadzane zgodnie z poniższymi poziomami optymalizacji.

              0      Odpowiednik poziomu optymalizacji 1.

              1      Jest to domyślny poziom optymalizacji i odnosi się do  tradycyjnego  zachowania.  Kolejność
                     wyrażeń jest zmieniana w ten sposób, że testy działające tylko na nazwach plików (np. -name
                     lub -regex) są wykonywane jako pierwsze.

              2      Any  -type  or -xtype tests are performed after any tests based only on the names of files,
                     but before any tests that require information from the inode.  On many modern  versions  of
                     Unix,  file  types are returned by readdir() and so these predicates are faster to evaluate
                     than predicates which need to stat the file first.  If you use  the  -fstype FOO  predicate
                     and  specify  a filesystem type FOO which is not known (that is, present in `/etc/mtab') at
                     the time find starts, that predicate is equivalent to -false.

              3      Na tym poziomie optymalizacji, włączona jest pełna optymalizacja, działająca  w  oparciu  o
                     koszt  zapytań. Kolejność testów jest modyfikowana w taki sposób, aby tanie (szybkie) testy
                     były przeprowadzane wcześniej, a droższe - później, jeśli  to  konieczne.  Wewnątrz  każdej
                     grupy   kosztowej,   wskazania   są   przeprowadzane   wcześniej  lub  później,  zgodnie  z
                     prawdopodobieństwem ich powodzenia.  Przy  -o,  wskazania  o  większym  prawdopodobieństwie
                     sukcesu  są  przeprowadzane  wcześniej,  a  przy  -a,  wcześniej  wykonywane są wskazania o
                     większym prawdopodobieństwie niepowodzenia.

              Optymalizator działający w oparciu o koszty, ma z góry przyjęte  założenie  o  prawdopodobieństwie
              powodzenia  danego  testu.  W  niektórych  przypadkach, prawdopodobieństwo bierze pod uwagę naturę
              testu (np. -type f powinien kończyć się sukcesem częściej niż -type c). Optymalizator jest jeszcze
              w fazie kalkulacji. Jeśli nie poprawi to wydajności programu  find,  zostanie  ponownie  usunięty.
              Podobnie,   optymalizacje,  które  udowodnią  swą  rzetelność,  spójność  i  efektywność,  mogą  w
              przyszłości zostać włączone na  niższym  poziomie  optymalizacyjnym.  Jednak  domyślne  zachowanie
              (poziom  optymalizacji  1)  nie  zmieni  się  w  wydaniach 4.3.x. Zestaw testów findutils wykonuje
              wszystkie testy find na każdym poziomie optymalizacji, aby mieć pewność, że  wyniki  pozostają  te
              same.

WYRAŻENIE

       Część  wiersza  poleceń  po  liście  punktów  początkowych  jest  wyrażeniem.  Jest  to rodzaj określenia
       zapytania, opisującego w jaki sposób dopasowywać pliki i co  z  nimi  zrobić  po  dopasowaniu.  Wyrażenie
       składa się z kilku rzeczy:

       Testy  Testy  zwracają  prawdę  lub  fałsz,  zwykle  na podstawie jakiejś własności rozważanego pliku. Na
              przykład test -empty jest prawdziwy tylko, gdy bieżący plik jest pusty.

       Akcje  Akcje mają efekty poboczne (takie jak wypisywanie  czegoś  na  standardowym  wyjściu)  i  zwracają
              prawdę  lub fałsz, zwykle w zależności od tego, czy się powiodą. Akcje -print wypisuje na przykład
              nazwę bieżącego pliku na standardowym wyjściu.

       Opcje globalne
              Opcje globalne wpływają na działanie testów i akcji podanych w dowolnej  części  wiersza  poleceń.
              Opcje globalne zawsze zwracają prawdę. Na przykład opcja -depth powoduje, że find przechodzi przez
              system plików, zagłębiając się najpierw w katalogach.

       Opcje pozycyjne
              Opcje pozycyjne wpływają tylko na testy lub akcje, które występują za nimi. Opcja pozycyjne zawsze
              zwracają prawdę. Na przykład opcja -regextype jest pozycyjna, określa dialekt wyrażeń regularnych,
              dla wyrażeń regularnych, które pojawią się dalej w wierszu polecenia.

       Operatory
              Operatory  łączą  inne rzeczy w wyrażeniu. Obejmują na przykład -o (oznaczające logiczne LUB — OR)
              oraz -a (oznaczające logiczne ORAZ — AND). Tam, gdzie nie podano operatora, przyjmowane jest -a.

       Akcja -print jest wykonywana na wszystkich plikach, dla których prawdziwe jest całe wyrażenie,  chyba  że
       zawiera  ono  akcję inną niż -prune lub -quit. Akcjami wstrzymującymi domyślne -print są: -delete, -exec,
       -execdir, -ok, -okdir, -fls, -fprint, -fprintf, -ls, -print i -printf.

       Akcja -delete działa również jak opcja (ponieważ wymusza -depth).

   OPCJE POZYCYJNE
       Opcje pozycyjne zawsze zwracają prawdę. Wpływają jedynie na testy, które znajdują się za nimi  w  wierszu
       polecenia.

       -daystart
              Mierzy  czasy (dla -amin, -atime, -cmin, -ctime, -mmin i -mtime) od dziś, a nie od 24 godzin temu.
              Opcja ta wpływa jedynie na testy, pojawiające się później w wierszu polecenia.

       -follow
              Przestarzałe, proszę zamiast tego użyć opcji  -L.  Rozwiązuje  dowiązania  symboliczne.  Implikuje
              -noleaf.  Opcja  -foolow działa jedynie na testy pojawiające się w wierszu polecenia za nią. O ile
              nie poda się opcji -H lub -L, pozycja opcji -follow zmienia zachowanie wskazania  -newer  -  pliki
              będące argumentami -newer zostaną rozwiązane, jeśli są dowiązaniami symbolicznymi. To samo dotyczy
              opcji -newerXY, -anewer and -cnewer. Podobnie, wskazanie -type zostanie zawsze dopasowane do pliku
              wskazanego przez dowiązanie symboliczne, zamiast do samego dowiązania. Użycie -follow powoduje, że
              wskazania -lname i -ilname zawsze zwracają fałsz.

       -regextype typ
              Changes  the regular expression syntax understood by -regex and -iregex tests which occur later on
              the command line.  To see which regular expression types  are  known,  use  -regextype help.   The
              Texinfo  documentation (see SEE ALSO)  explains the meaning of and differences between the various
              types of regular expression.

       -warn, -nowarn
              Turn warning messages on or off.  These warnings apply only to the command line usage, not to  any
              conditions  that  find  might  encounter  when  it  searches  directories.   The default behaviour
              corresponds to -warn if standard input is a tty, and to -nowarn otherwise.  If a  warning  message
              relating  to  command-line  usage  is  produced,  the exit status of find is not affected.  If the
              POSIXLY_CORRECT environment variable is set, and -warn is also used, it is not specified which, if
              any, warnings will be active.

   OPCJE GLOBALNE
       Opcje globalne zawsze zwracają prawdę. Opcje  globalne  działają  nawet  wobec  testów,  które  występują
       wcześniej w wierszu polecenia. Aby uniknąć zamieszania, opcje globalne należy podawać w wierszu polecenia
       po  liście  punktów początkowych, a przed pierwszymi testami, opcjami pozycyjnymi lub akcjami. Jeśli poda
       się opcję globalną w innym miejscu, find wypisze ostrzeżenie, wyjaśniające że może być to mylące.

       Opcje globalne pojawiają się po liście punktów początkowych, zatem nie są opcjami tego  samego  typu  jak
       np. -L.

       -d     Synonim -depth, ze względu na kompatybilność z FreeBSD, NetBSD, MacOS X i OpenBSD.

       -depth Przetwarza  zawartość  każdego katalogu przed samym katalogiem jako takim. Akcja -delete implikuje
              także -depth.

       -files0-from plik
              Read the starting points from file instead of getting them on the command line.   In  contrast  to
              the  known  limitations  of  passing starting points via arguments on the command line, namely the
              limitation of the amount of file names, and the inherent ambiguity of  file  names  clashing  with
              option  names,  using  this option allows to safely pass an arbitrary number of starting points to
              find.

              Using this option and passing starting points on the command line is mutually  exclusive,  and  is
              therefore not allowed at the same time.

              The  file  argument  is mandatory.  One can use -files0-from - to read the list of starting points
              from the standard input stream, and e.g. from a pipe.  In this case, the actions  -ok  and  -okdir
              are  not allowed, because they would obviously interfere with reading from standard input in order
              to get a user confirmation.

              The starting points in file have to be separated by ASCII NUL  characters.   Two  consecutive  NUL
              characters, i.e., a starting point with a Zero-length file name is not allowed and will lead to an
              error diagnostic followed by a non-Zero exit code later.

              In  the  case the given file is empty, find does not process any starting point and therefore will
              exit immediately after parsing the program arguments.  This  is  unlike  the  standard  invocation
              where find assumes the current directory as starting point if no path argument is passed.

              The  processing  of  the  starting  points  is  otherwise  as  usual, e.g.  find will recurse into
              subdirectories unless  otherwise  prevented.   To  process  only  the  starting  points,  one  can
              additionally pass -maxdepth 0.

              Further  notes: if a file is listed more than once in the input file, it is unspecified whether it
              is visited more than once.  If the file is mutated during the operation of  find,  the  result  is
              unspecified  as well.  Finally, the seek position within the named file at the time find exits, be
              it with -quit or in any other way, is also unspecified.  By "unspecified" here is  meant  that  it
              may  or  may  not work or do any specific thing, and that the behavior may change from platform to
              platform, or from findutils release to release.

       -help, --help
              Wypisuje sposób użycia find z wiersza poleceń i kończy pracę programu.

       -ignore_readdir_race
              Zwykle find wyświetla błąd, gdy nie uda mu się pobrać  statusu  pliku.  Po  podaniu  tej  opcji  i
              usunięciu  pliku  pomiędzy  odczytem  przez  find nazwy pliku z katalogu i momentem próby pobrania
              statusu, błąd nie zostanie wyświetlony. Dotyczy to również plików i katalogów podanych  w  wierszu
              polecenia. Opcja ta zaczyna działać już przy odczycie wiersza polecenia, co oznacza, że nie da się
              przeszukiwać  systemu  plików  częściowo  z opcją włączoną i częściowo z wyłączoną (aby to zrobić,
              konieczne jest dwukrotne uruchomienie polecenia find, jeden raz z opcją  włączoną,  a  drugi  -  z
              wyłączoną).

              Furthermore, find with the -ignore_readdir_race option will ignore errors of the -delete action in
              the case the file has disappeared since the parent directory was read: it will not output an error
              diagnostic, and the return code of the -delete action will be true.

       -maxdepth głębokość
              Descend  at  most levels (a non-negative integer) levels of directories below the starting-points.
              Using -maxdepth 0 means only apply the tests and actions to the starting-points themselves.

       -mindepth głębokość
              Nie stosuje testów lub akcji w poziomach niższych  niż  głębokość  (nieujemna  liczba  całkowita).
              Użycie mindepth 1 oznacza przetwarzanie wszystkich plików poza punktami początkowymi.

       -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.

       -noignore_readdir_race
              Wyłącza efekt opcji -ignore_readdir_race.

       -noleaf
              Zakazuje optymalizacji wykonywanej przez zakładanie, że katalogi zawierają o dwa podkatalogi mniej
              niż ich licznik dowiązań zwykłych  (twardych).  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 wolumeny AFS. Każdy  katalog  w  normalnym  systemie  uniksowym  zawiera
              przynajmniej  dwa  twarde  dowiązania: jego nazwę i ".". Dodatkowo, jego podkatalogi będą do niego
              dowiązane za pomocą ".." każdy.  Gdy find testuje katalog po  zbadaniu  funkcją  stat  o  2  mniej
              podkatalogów  niż  licznik  dowiązań,  wie,  że reszta wpisów jest niekatalogowa (są to "liście" -
              "leaf" w drzewie katalogów). 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
       Niektóre  testy np. -newerXY i -samefile pozwalają na porównanie pomiędzy aktualnie sprawdzanym plikiem i
       plikiem odniesienia podanym w wierszu polecenia. Gdy te testy są używane, interpretacja pliku odniesienia
       zależy od opcji -H, -L i -P i podanej wcześniej -follow, lecz plik odniesienia jest sprawdzany tylko raz,
       przy przetwarzaniu wiersza polecenia. Jeśli plik odniesienia nie może zostać  sprawdzony  (np.  wywołanie
       systemowe  stat(2)  nie  powiedzie się na nim), wyświetlany jest błąd, a find wychodzi z niezerowym kodem
       zakończenia.

       Do testów (takich jak -amin, -mtime, -gid, -inum, -links, -size,  -uid  i  -used)  można  podać  argument
       numeryczny n jako

       +n     dla większych niż n,

       -n     dla mniejszych niż n,

       n      dla równych n.

       Obsługiwane testy:

       -amin n
              Dostęp do pliku nastąpił ostatnio wcześniej niż, dawniej niż lub dokładnie n minut temu.

       -anewer odniesienie
              Time of the last access of the current file is more recent than that of the last data modification
              of  the  reference file.  If reference is a symbolic link and the -H option or the -L option is in
              effect, then the time of the last data modification of the file it points to is always used.

       -atime n
              Dostęp do pliku miał miejsce wcześniej niż, dawniej niż lub dokładnie n*24 godzin temu.  Gdy  find
              dowie  się  jak  wiele  okresów  24-godzinnych  temu  dostano  się do pliku, ignorowana jest część
              ułamkowa; tak więc aby dopasować -atime +1, dostęp do pliku musiał być co najwyżej dwa dni temu.

       -cmin n
              Status pliku został zmieniony wcześniej niż, dawniej niż lub dokładnie n minut temu.

       -cnewer odniesienie
              Time of the last status change of the current file is more recent  than  that  of  the  last  data
              modification  of  the reference file.  If reference is a symbolic link and the -H option or the -L
              option is in effect, then the time of the last data modification of  the  file  it  points  to  is
              always used.

       -ctime n
              Status  pliku  został  zmieniony wcześniej niż, dawniej niż lub dokładnie n*24 godzin temu. Proszę
              zapoznać się z komentarzami do -atime, aby zrozumieć wpływ  zaokrąglenia  na  interpretację  czasu
              modyfikacji pliku.

       -empty Plik jest pusty i jest albo zwykłym plikiem, albo katalogiem.

       -executable
              Dopasowuje  pliki,  które są wykonywalne i katalogi, które są przeszukiwalne (w sensie tłumaczenia
              nazw pliku) dla bieżącego użytkownika. Bierze pod uwagę listy kontroli dostępu (ACL) i inne zasady
              praw dostępu, które są  ignorowane  przez  test  -perm.   Ten  test  używa  wywołania  systemowego
              access(2)  i może być zmylony przez serwery NFS używające mapowania UID (lub root-squashing), gdyż
              wiele systemów implementuje access(2) w jądrze klienta i nie może użyć informacji mapowania UID po
              stronie serwera. Ponieważ test ten działa tylko w oparciu o wywołanie systemowe access(2), nie  ma
              gwarancji, że plik dla którego test się powiódł, może być w rzeczywistości wykonany.

       -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 swoich systemów plików, należy użyć -printf z
              dyrektywą %F.

       -gid n Numeryczny GID pliku, który wynosi mniej niż, więcej niż lub dokładnie n.

       -group nazwag
              Plik należy do grupy nazwag (numeryczny GID jest dopuszczalny).

       -ilname wzorzec
              Podobnie jak -lname, lecz dopasowanie jest niezależne od wielkości znaków. Jeśli działa  opcja  -L
              lub -follow, test zwraca fałsz, chyba że dowiązanie symboliczne jest zerwane.

       -iname pattern
              Like  -name,  but  the match is case insensitive.  For example, the patterns `fo*' and `F??' match
              the file names `Foo', `FOO', `foo', `fOo', etc.  The pattern `*foo*` will also match a file called
              '.foobar'.

       -inum n
              Plik ma numer i-węzła mniejszy niż, większy niż lub dokładnie równy n. Zwykle  łatwiej  jest  użyć
              testu -samefile.

       -ipath wzorzec
              Podobne do -path, lecz dopasowanie jest niewrażliwe na rozmiar liter.

       -iregex wzorzec
              Podobne do -regex, lecz dopasowanie jest niewrażliwe na rozmiar liter.

       -ilname pattern
              Patrz -ipath. Ta alternatywa jest mniej przenośna niż wspomniana opcja.

       -links n
              Plik ma mniej niż, więcej niż lub dokładnie n dowiązań zwykłych (twardych).

       -lname wzorzec
              Plik  jest  dowiązaniem  symbolicznym,  którego  zawartość  odpowiada  wzorcowi  powłoki  wzorzec.
              Metaznaki nie traktują specjalnie "/" i ".". Jeśli działa opcja -L lub  -follow,  to  test  zwraca
              fałsz, chyba że dowiązanie symboliczne jest zerwane.

       -mmin n
              Dane pliku były ostatnio modyfikowane wcześniej niż, dawniej niż lub dokładnie n minut temu.

       -mtime n
              File's  data  was  last modified less than, more than or exactly n*24 hours ago.  See the comments
              for -atime to understand how rounding affects the interpretation of file modification times.

       -name wzorzec
              Base of file name (the path with the leading directories removed)  matches shell pattern  pattern.
              Because the leading directories are removed, the file names considered for a match with -name will
              never  include  a  slash, so `-name a/b' will never match anything (you probably need to use -path
              instead).  A  warning  is  issued  if  you  try  to  do  this,  unless  the  environment  variable
              POSIXLY_CORRECT  is  set.  The metacharacters (`*', `?', and `[]') match a `.' at the start of the
              base name (this is a change in findutils-4.2.2; see  section  STANDARDS  CONFORMANCE  below).   To
              ignore a directory and the files under it, use -prune rather than checking every file in the tree;
              see  an  example  in  the description of that action.  Braces are not recognised as being special,
              despite the fact that some shells including Bash imbue braces with  a  special  meaning  in  shell
              patterns.   The  filename  matching is performed with the use of the fnmatch(3)  library function.
              Don't forget to enclose the pattern in quotes in order to protect it from expansion by the shell.

       -newer odniesienie
              Time of the last data modification of the current file is more recent than that of the  last  data
              modification  of  the reference file.  If reference is a symbolic link and the -H option or the -L
              option is in effect, then the time of the last data modification of  the  file  it  points  to  is
              always used.

       -newerXY odniesienie
              Succeeds  if  timestamp  X  of  the  file  being  considered is newer than timestamp Y of the file
              reference.  The letters X and Y can be any of the following letters:

              a   Czas dostępu (ang. access) pliku odniesienie
              B   Czas powstania (ang. birth) pliku odniesienie
              c   Czas zmiany (ang. change) statusu i-węzła odniesienia
              m   Czas modyfikacji pliku odniesienie
              t   odniesienie jest interpr. bezpośrednio jako czas (ang. time)

              Niektóre  kombinacje  są  nieprawidłowe,  np.  X  nie  może  być  t.  Część  kombinacji  nie  jest
              zaimplementowanych  we  wszystkich systemach, do takich należy np. B. Jeśli poda się nieprawidłową
              lub  nieobsługiwaną  kombinację  XY,  otrzymuje  się  błąd  krytyczny.   Określenia   czasowe   są
              interpretowane jak argument do opcji -d GNU date. Jeżeli czas powstania pliku odniesienia nie może
              być  ustalony,  to  przy próbie użycia go wynikiem jest komunikat o błędzie krytycznym. Jeśli poda
              się test, odnoszący się do czasu powstania sprawdzanych plików, to test ten nie powiedzie się  dla
              wszystkich plików, których czas ten jest nieznany.

       -nogroup
              Do numerycznego GID pliku nie pasuje żadna grupa.

       -nouser
              Do numerycznego UID pliku nie pasuje żaden użytkownik.

       -path wzorzec
              Nazwa pliku odpowiada wzorcowi powłoki wzorzec. Metaznaki nie traktują specjalnie "/" lub "."; tak
              więc na przykład,
                  find . -path "./sr*sc"
              will  print  an  entry  for  a  directory  called  ./src/misc  (if one exists).  To ignore a whole
              directory tree, use -prune rather than checking every file in the tree.   Note  that  the  pattern
              match  test  applies  to  the  whole file name, starting from one of the start points named on the
              command line.  It would only make sense to use an absolute path name here if  the  relevant  start
              point is also an absolute path.  This means that this command will never match anything:
                  find bar -path /foo/bar/myfile -print
              Find  compares  the -path argument with the concatenation of a directory name and the base name of
              the file it's examining.  Since the concatenation will never end with  a  slash,  -path  arguments
              ending in a slash will match nothing (except perhaps a start point specified on the command line).
              The predicate -path is also supported by HP-UX find and is part of the POSIX 2008 standard.

       -perm prawa
              File's permission bits are exactly mode (octal or symbolic).  Since an exact match is required, if
              you  want  to  use  this  form  for  symbolic modes, you may have to specify a rather complex mode
              string.  For example `-perm g=w' will only match files which have mode 0020  (that  is,  ones  for
              which group write permission is the only permission set).  It is more likely that you will want to
              use  the  `/'  or  `-'  forms,  for  example `-perm -g=w', which matches any file with group write
              permission.  See the EXAMPLES section for some illustrative examples.

       -perm -prawa
              Wszystkie bity praw pliku są ustawione dla pliku. Akceptowane są tryby w  postaci  symbolicznej  i
              jest to zwykle wygodniejsza forma do użycia. W przypadku korzystania z postaci symbolicznej trzeba
              podać "u", "g" lub "o". Lepsze przykłady podano w rozdziale PRZYKŁADY.

       -perm /prawa
              Ustawiony  jest  dowolny  z  bitów  praw  pliku.  Akceptowane  są  tryby w postaci symbolicznej. W
              przypadku korzystania z postaci symbolicznej trzeba podać  "u",  "g"  lub  "o".  Lepsze  przykłady
              podano w rozdziale PRZYKŁADY. Jeśli nie ustawiono bitów praw w trybie, to test dopasuje każdy plik
              (zgodnie z zamysłem, aby pozostać w zgodzie z zachowaniem -perm -000).

       -perm +prawa
              Nie jest już obsługiwane (a było przestarzałe od 2005 roku). Proszę użyć w zamian -perm /tryb.

       -readable
              Dopasowuje  pliki odczytywalne przez bieżącego użytkownika. Bierze się tu pod uwagę listy kontroli
              dostępu (ACL) i inne sprawy związane  z  uprawnieniami,  które  -perm  ignoruje.  Ten  test  używa
              wywołania  systemowego access(2) i może być zmylony przez serwery NFS używające mapowania UID (lub
              root-squashing), gdyż wiele systemów implementuje access(2) w  jądrze  klienta  i  nie  może  użyć
              informacji mapowania UID po stronie serwera.

       -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żna użyć wyrażenia
              regularnego ".*bar" lub ".*b.*3", lecz nie "f.*r3". Wyrażenia regularne rozumiane  przez  find  są
              domyślnie  wyrażeniami  regularnymi  Emacsa (z tym wyjątkiem, że "." dopasowuje nowy wiersz), lecz
              można to zmienić opcją -regextype.

       -samefile nazwa
              Plik odnosi się do tego samego i-węzła co nazwa. Gdy  działa  opcja  -L,  obejmuje  to  dowiązania
              symboliczne.

       -size n[c|w|b|k|M|G]
              Plik  używa  mniej  niż,  więcej niż lub dokładnie n jednostek miejsca, zaokrąglając w górę. Można
              dodać następujące przyrostki:

              b      bloki 512-bajtowe (wartość domyślna, gdy nie użyto przyrostka)

              c      bajty

              w      słowa dwubajtowe

              k      kibibajty (KiB, jednostka 1024 bajtów)

              M      mebibajty (MiB, jednostka 1024 * 1024 = 1048576 bajtów)

              G      gibibajty (GiB, jednostka 1024 * 1024 * 1024 = 1073741824 bajtów)

              The size is simply the st_size member of the struct stat populated by the lstat (or  stat)  system
              call,  rounded  up  as  shown  above.  In other words, it's consistent with the result you get for
              ls -l.  Bear in mind that the `%k' and `%b' format  specifiers  of  -printf  handle  sparse  files
              differently.   The  `b' suffix always denotes 512-byte blocks and never 1024-byte blocks, which is
              different to the behaviour of -ls.

              The + and - prefixes signify greater than and less than, as usual; i.e., an exact size of n  units
              does  not  match.  Bear in mind that the size is rounded up to the next unit.  Therefore -size -1M
              is not equivalent to -size -1048576c.  The former only matches empty  files,  the  latter  matches
              files from 0 to 1,048,575 bytes.

       -true  Zawsze prawda.

       -type c
              Plik jest typu c:

              b      blokowy (buforowany) plik specjalny

              c      znakowy (niebuforowany) plik specjalny (ang. character)

              d      katalog (ang. directory)

              p      łącze nazwane (FIFO, ang. pipe)

              f      zwykły plik

              l      dowiązanie  symboliczne  (link); nigdy nie jest to prawda, gdy działa opcja -L lub -foolow,
                     chyba że dowiązanie jest zerwane. Aby wyszukiwać dowiązania symboliczne przy korzystaniu  z
                     opcji -L, należy użyć -xtype.

              s      gniazdo

              D      door (Solaris)

              To  search  for  more  than  one  type  at  once, you can supply the combined list of type letters
              separated by a comma `,' (GNU extension).

       -uid n Numeryczny UID pliku wynosi mniej niż, więcej niż lub dokładnie n.

       -used n
              Do pliku ostatnio dostano się wcześniej niż, dawniej niż lub  dokładnie  n  dni  po  zmianie  jego
              statusu.

       -user unazwa
              Właścicielem pliku jest użytkownik unazwa (numeryczny UID jest tu dozwolony).

       -wholename wzorzec
              Patrz -path. Ta alternatywa jest mniej przenośna niż wspomniana opcja.

       -writable
              Dopasowuje  pliki  zapisywalne  dla bieżącego użytkownika. Bierze pod uwagę listy kontroli dostępu
              (ACL) i inne zasady praw dostępu, które są ignorowane przez test -perm.  Ten test używa  wywołania
              systemowego  access(2)  i  może  być  zmylony  przez  serwery  NFS  używające  mapowania  UID (lub
              root-squashing), gdyż wiele systemów implementuje access(2) w  jądrze  klienta  i  nie  może  użyć
              informacji mapowania UID po stronie serwera.

       -xtype c
              Jest to to samo co -type, chyba że plik jest dowiązaniem symbolicznym. Dla dowiązań symbolicznych:
              jeśli podano -H lub -P, jest prawdziwe gdy plik jest dowiązaniem do pliku typu c; jeśli podano -L,
              jest  prawdziwe,  jeśli  c  to  "l".  Innymi słowy, dla dowiązań symbolicznych -xtype sprawdza typ
              pliku, którego nie sprawdza -type.

       -context wzorzec
              (tylko SELinux) Kontekst bezpieczeństwa pliku dopasowanego przez wzorzec typu glob.

   AKCJE
       -delete
              Usuwa pliki lub katalogi; prawdziwe gdy usunięcie powiedzie się. Jeśli  nie,  to  wypisywany  jest
              błąd, a kod zakończenia find będzie niezerowy (gdy program ostatecznie się zakończy).

              Warning:  Don't  forget  that find evaluates the command line as an expression, so putting -delete
              first will make find try to delete everything below the starting points you specified.

              The use of the -delete action on the command line automatically turns on the -depth option.  As in
              turn -depth makes -prune ineffective, the -delete action cannot usefully be combined with -prune.

              Often, the user might want to test a find command line with -print prior to adding -delete for the
              actual removal run.  To avoid surprising results, it is usually best to  remember  to  use  -depth
              explicitly during those earlier test runs.

              The -delete action will fail to remove a directory unless it is empty.

              Together  with  the  -ignore_readdir_race option, find will ignore errors of the -delete action in
              the case the file has disappeared since the parent directory was read: it will not output an error
              diagnostic, not change the exit code to nonzero, and the return code of the -delete action will be
              true.

       -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, wszędzie, gdzie wystąpi ona  w  wierszu
              polecenia,  nie tylko w argumentach, gdzie jest ona sama, jak w niektórych wersjach find.  Obydwie
              te konstrukcje być może będą wymagały zacytowania (znakiem "\") aby uchronić je przed rozwinięciem
              przez powłokę. Więcej  informacji  na  temat  użycia  opcji  -exec,  zawiera  rozdział  PRZYKŁADY.
              Polecenie  jest  wykonywane  w  katalogu  startowym.  W  związku  z  akcją  -exec  występują pewne
              nieuniknione zagrożenia związane z bezpieczeństwem, należy zamiast niej używać -execdir.

       -exec polecenie {} +
              This variant of the -exec action runs the specified command on the selected files, but the command
              line is built by appending each selected file name at the end; the total number of invocations  of
              the command will be much less than the number of matched files.  The command line is built in much
              the same way that xargs builds its command lines.  Only one instance of `{}' is allowed within the
              command, and it must appear at the end, immediately before the `+'; it needs to be escaped (with a
              `\')  or  quoted  to  protect it from interpretation by the shell.  The command is executed in the
              starting directory.  If any invocation with the `+' form returns a non-zero value as exit  status,
              then  find  returns a non-zero exit status.  If find encounters an error, this can sometimes cause
              an  immediate  exit,  so  some  pending  commands  may  not  be  run  at  all.   For  this  reason
              -exec my-command ... {} + -quit  may not result in my-command actually being run.  This variant of
              -exec always returns true.

       -execdir polecenie ;

       -execdir polecenie {} +
              Like -exec, but the specified command is run from the subdirectory containing  the  matched  file,
              which  is  not  normally the directory in which you started find.  As with -exec, the {} should be
              quoted if find is being invoked from a shell.   This  a  much  more  secure  method  for  invoking
              commands,  as  it  avoids race conditions during resolution of the paths to the matched files.  As
              with the -exec action, the `+' form of -execdir will build a command line to process more than one
              matched file, but any given invocation of command will only list files  that  exist  in  the  same
              subdirectory.   If  you  use this option, you must ensure that your PATH environment variable does
              not reference `.';  otherwise,  an  attacker  can  run  any  commands  they  like  by  leaving  an
              appropriately-named  file  in  a  directory  in  which you will run -execdir.  The same applies to
              having entries in PATH which are empty  or  which  are  not  absolute  directory  names.   If  any
              invocation with the `+' form returns a non-zero value as exit status, then find returns a non-zero
              exit  status.   If  find  encounters an error, this can sometimes cause an immediate exit, so some
              pending commands may not be run at all.  The result of the action depends on whether the + or  the
              ;  variant  is  being used; -execdir command {} + always returns true, while -execdir command {} ;
              returns true only if command returns 0.

       -fls plik
              Prawda; podobne do -ls, lecz zapisuje do pliku jak -fprint. Plik wyjściowy jest  tworzony  zawsze,
              nawet jeśli wskazanie nigdy nie pasuje. W rozdziale NIETYPOWE NAZWY PLIKÓW znajdują się informacje
              nt. obsługi nietypowych nazw plików.

       -fprint plik
              Prawdziwe;  wypisuje  pełną nazwę pliku do pliku. Jeśli plik nie istnieje w czasie działania find,
              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. Plik wyjściowy jest tworzony zawsze, nawet jeśli wskazanie nigdy nie pasuje.  W  rozdziale
              NIETYPOWE NAZWY PLIKÓW znajdują się informacje nt. obsługi nietypowych nazw plików.

       -fprint0 plik
              Prawda;  podobne  do  -print0,  lecz  zapisuje  do pliku jak -fprint. Plik wyjściowy jest tworzony
              zawsze, nawet jeśli wskazanie nigdy nie pasuje. W rozdziale NIETYPOWE NAZWY  PLIKÓW  znajdują  się
              informacje nt. obsługi nietypowych nazw plików.

       -fprintf plik format
              Prawda;  podobne  do  -printf,  lecz  zapisuje  do pliku jak -fprint. Plik wyjściowy jest tworzony
              zawsze, nawet jeśli wskazanie nigdy nie pasuje. W rozdziale NIETYPOWE NAZWY  PLIKÓW  znajdują  się
              informacje nt. obsługi nietypowych nazw plików.

       -ls    Prawdziwe;  wypisuje  plik bieżący w formacie ls -dils na standardowe wyjście.  Liczniki bloków są
              1K blokami, chyba że ustawiono zmienną środowiskową POSIXLY_CORRECT, gdy używane będą  512-bajtowe
              bloki.  W  rozdziale  NIETYPOWE  NAZWY PLIKÓW znajdują się informacje nt. obsługi nietypowych nazw
              plików.

       -ok polecenie ;
              Jak -exec, lecz najpierw pyta użytkownika. Jeśli się on zgodzi - uruchamia polecenie. W przeciwnym
              wypadku  jedynie  zwraca  fałsz.  Gdy  polecenie  jest  uruchomione,  standardowe   wejście   jest
              przekierowane z /dev/null. Akcji nie można podać równocześnie z opcją -files0-from.

              Odpowiedź  na  pytanie  jest  dopasowywane  do  pary  wyrażeń  regularnych, aby określić, czy jest
              pozytywna czy negatywna. Wyrażenie to jest pozyskiwane z systemu,  jeśli  ustawiona  jest  zmienna
              środowiskowa  POSIXLY_CORRECT,  a  w  przeciwnym  wypadku - z katalogu tłumaczeń komunikatów find.
              Jeśli system nie posiada odpowiednich definicji, użyta będzie własna  definicja  finda.  W  każdym
              przypadku,  interpretacja wyrażenia regularnego będzie zależała od zmiennej środowiskowej LC_CTYPE
              (klasy znakowe) i LC_COLLATE (przedziały znaków i klasy równoważności).

       -okdir polecenie ;
              Like -execdir but ask the user first in the same way as for -ok.  If the user does not agree, just
              return false.  If the command is run, its standard  input  is  redirected  from  /dev/null.   This
              action may not be specified together with the -files0-from option.

       -print Prawdziwe;  wypisuje  pełną  nazwę  pliku  na standardowe wyjście razem ze znakiem nowego wiersza.
              Jeśli wyjście finda jest przekierowane za  pomocą  potoku  do  innego  programu  i  istnieje  choć
              najmniejsza  możliwość,  że  nazwa  jednego  z  przeszukiwanych  plików  może zawierać znak nowego
              wiersza, należy się poważnie zastanowić, czy lepszym wyjściem  nie  będzie  skorzystanie  z  opcji
              -print0,   zamiast  -print.  Rozdział  NIETYPOWE  NAZWY  PLIKÓW  zawiera  informacje  nt.  obsługi
              nietypowych znaków.

       -print0
              Prawdziwe; wypisuje pełną nazwę pliku na standardowe wyjście. Za nazwą  daje  znak  null  (zamiast
              znaku   nowego  wiersza  używanego  przez  -print.  Umożliwia  to  poprawne  wyświetlenie  plików,
              zawierających w nazwach znaki nowej linii w programach, przetwarzających wyjście finda.  Opcja  ta
              odpowiada opcji -0 programu xargs.

       -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 funkcji printf(3) z  C.
              Proszę  zauważyć,  że  wiele z pól jest wypisywanych jako %s, a nie jako %d - może to oznaczać, że
              flagi nie będą działać zgodnie z oczekiwaniami. Oznacza to również, że flaga "-"  działa  (wymusza
              wyrównanie  do lewej pól). W przeciwieństwie do -print, -printf nie dodaje znaku nowego wiersza do
              końca łańcucha. Sekwencje specjalne i dyrektywy to:

              \a     Dzwonek.

              \b     Backspace.

              \c     Wstrzymuje wypisywanie tego formatu i natychmiast wymiata wyjście.

              \f     Wysuw wiersza.

              \n     Nowy wiersz.

              \r     Powrót karetki.

              \t     Tabulacja pozioma.

              \v     Tabulacja pionowa.

              \0     ASCII NUL.

              \\     Literalny lewy ukośnik ("\").

              \NNN   Znak o kodzie ASCII NNN (ósemkowo).

              "\", za którym następuje dowolny inny znak, jest traktowany jak zwykły znak,  więc  są  wypisywane
              obydwa.

              %%     Literalny znak procenta.

              %a     Ostatni czas dostępu do pliku w formacie zwracanym przez funkcję ctime(3) C.

              %Ak    File's  last  access  time in the format specified by k, which is either `@' or a directive
                     for the C strftime(3)  function.  The following shows an incomplete list of possible values
                     for k.  Please refer to the documentation of strftime(3)  for the full list.  Some  of  the
                     conversion  specification  characters  might  not  be  available  on  all  systems,  due to
                     differences in the implementation of the strftime(3)  library function.

                     @      Sekundy od 1 stycznia, 1970, 00:00 GMT, z częścią ułamkową.

                     Pola czasowe:

                     H      godzina (00..23)

                     I      godzina (01..12)

                     k      godzina ( 0..23)

                     l      godzina ( 1..12)

                     M      minuta (00..59)

                     p      przetłumaczone AM lub PM

                     r      czas, 12-godzinny (gg:mm:ss)

                     S      Sekundy (00.00 .. 61.00). Jest tu część ułamkowa.

                     T      czas, 24-godzinny (gg:mm:ss.xxxxxxxxxx)

                     +      Data i czas, oddzielona "+" np "2004-04-28+22:22:05.0". Jest  to  rozszerzenie  GNU.
                            Czas  jest  podany  w  bieżącej strefie czasowej (na którą wpływ może mieć ustawiona
                            zmienna środowiskowa TZ). Pole sekundowe zawiera część ułamkową.

                     X      lokalna reprezentacja czasu (G:M:S). Drugie pole zawiera część ułamkową.

                     Z      strefa czasowa (np. EDT), lub nic jeśli nie da się jej określić

                     Pola daty:

                     a      lokalny skrót nazwy tygodnia (nie..sob)

                     A      lokalna pełna nazwa tygodnia, zmiennej długości (niedziela..sobota)

                     b      lokalna skrócona nazwa miesiąca (sty..gru)

                     B      lokalna pełna nazwa miesiąca, zmiennej długości (styczeń..grudzień)

                     c      data i czas zgodnie z ustawieniami regionalnymi (sob, 4 lis 1989, 12:02:33).  Format
                            ten  jest  taki  sam w przypadku ctime(3) i w celu zachowania z nim kompatybilności,
                            nie ma tu części ułamkowej w polu sekund.

                     d      dzień miesiąca (01..31)

                     D      data (mm/dd/rr)

                     F      data (rrrr-mm-dd)

                     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.rrrr)

                     y      ostatnie dwie cyfry roku (00..99)

                     Y      rok (1970...)

              %b     Wielkość  przestrzeni  dysku,  użyta  dla  tego  pliku  w  blokach  512-bajtowych. Ponieważ
                     przestrzeń dyskowa jest alokowana w wielokrotnościach rozmiaru bloku systemu  plików,  jest
                     to  zwykle  więcej  niż  %s/512, lecz może być to również mniej, gdy plik jest tzw. plikiem
                     rzadkim.

              %Bk    File's birth time, i.e., its creation time, in the format specified by k, which is the same
                     as for %A.  This directive produces an empty string if the underlying operating  system  or
                     filesystem does not support birth times.

              %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 będący punktem startowym.

              %D     Numer urządzenia, na którym istnieje plik (pole st_dev ze stat struct), dziesiętnie.

              %f     Print  the  basename;  the  file's name with any leading directories removed (only the last
                     element).  For /, the result is `/'.  See the EXAMPLES section for an example.

              %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     Dirname; the Leading directories of the file's name (all but the  last  element).   If  the
                     file  name  contains  no  slashes  (since  it is in the current directory) the %h specifier
                     expands to `.'.  For files which are themselves directories and contain a slash  (including
                     /), %h expands to the empty string.  See the EXAMPLES section for an example.

              %H     Punkt początkowy, pod którym plik został znaleziony.

              %i     Numer i-węzła pliku (dziesiętnie).

              %k     Wielkość  przestrzeni dysku, użyta dla tego pliku w blokach o wielkości 1K bajtów. Ponieważ
                     przestrzeń dyskowa jest alokowana w wielokrotnościach rozmiaru bloku systemu  plików,  jest
                     to  zwykle  więcej  niż %s/1024, lecz może być to również mniej, gdy plik jest tzw. plikiem
                     rzadkim.

              %l     Obiekt  dowiązania  symbolicznego  (pusty  łańcuch,  jeśli  plik   nie   jest   dowiązaniem
                     symbolicznym).

              %m     Bity  praw  pliku  (ósemkowo).  Ta  opcja  korzysta z "tradycyjnych" liczb, używanych przez
                     większość  implementacji  Uniksowych,  lecz  jeśli  dana,  używana  obecnie  implementacja,
                     wykorzystuje  dziwną kolejność ósemkowych bitów uprawnień, widoczna będzie różnica pomiędzy
                     prawami pliku i wynikiem %m. Zwykle chce się tu użyć początkowego  zera  i  aby  to  zrobić
                     należy skorzystać z flagi # (np. "%#m")

              %M     Uprawnienia  pliku  (w postaci symbolicznej, jak w ls). Ta dyrektywa jest obsługiwana przez
                     findutils 4.2.5 i późniejsze.

              %n     Liczba twardych dowiązań do pliku.

              %p     Nazwa pliku.

              %P     File's name with the name of the starting-point under which it was found removed.

              %s     Rozmiar pliku w bajtach.

              %S     File's sparseness.  This is calculated as (BLOCKSIZE*st_blocks / st_size).  The exact value
                     you will get for an ordinary file  of  a  certain  length  is  system-dependent.   However,
                     normally  sparse  files will have values less than 1.0, and files which use indirect blocks
                     may have a value which is greater than 1.0.  In general the number of blocks used by a file
                     is file system dependent.  The value used for BLOCKSIZE is system-dependent, but is usually
                     512 bytes.  If the file size is zero, the value printed is  undefined.   On  systems  which
                     lack support for st_blocks, a file's sparseness is assumed to be 1.0.

              %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.

              %y     Typ  pliku  (podobnie  jak  w  ls  -l),  "U"  to  typ  nieznany (ang. unknown, nie powinien
                     wystąpić).

              %Y     File's type (like %y), plus follow symbolic links: `L'=loop, `N'=nonexistent, `?'  for  any
                     other error when determining the type of the target of a symbolic link.

              %Z     (SELinux only) file's security context.

              %{ %[ %(
                     Reserved for future use.

              Znak  "%"  po  którym  występuje  dowolny  inny  znak  jest  ignorowany,  lecz ten drugi znak jest
              wypisywany (nie należy na tym polegać, gdyż mogą zostać wprowadzone nowe  znaki  formatu).  Symbol
              "%"  na  końcu  argumentu  formatu  skutkuje  niezdefiniowanym  zachowaniem,  ponieważ  brak  jest
              następnego znaku. W niektórych ustawieniach regionalnych opcja ta może  ukryć  klucz  do  domu,  w
              innych usunąć ostatnią stronicę czytanej powieści. Ostrzegaliśmy!

              Dyrektywy  %m  i  %d  obsługują  flagi  #, 0 i +, lecz inne dyrektywy nie, nawet jeśli wyświetlają
              liczby. Do dyrektyw liczbowych, które nie obsługują tych flag, należą G, U, b, D,  k  i  n.  Flaga
              formatu "-" jest obsługiwana i zmienia wyrównanie pól z prawego (domyślnego) na lewy.

              Rozdział NIETYPOWE NAZWY PLIKÓW zawiera informacje nt. obsługi nietypowych nazw plików.

       -prune True;  if the file is a directory, do not descend into it.  If -depth is given, then -prune has no
              effect.  Because -delete implies -depth, you cannot usefully use -prune and -delete together.  For
              example, to skip the directory src/emacs and all files and directories under  it,  and  print  the
              names of the other files found, do something like this:
                  find . -path ./src/emacs -prune -o -print

       -quit  Exit immediately (with return value zero if no errors have occurred).  This is different to -prune
              because  -prune  only applies to the contents of pruned directories, while -quit simply makes find
              stop immediately.  No child processes will be left running.  Any command  lines  which  have  been
              built  by  -exec ... + or -execdir ... + are invoked before the program is exited.  After -quit is
              executed, no  more  files  specified  on  the  command  line  will  be  processed.   For  example,
              `find /tmp/foo /tmp/bar -print -quit` will print only `/tmp/foo`.
              One common use of -quit is to stop searching the file system once we have found what we want.  For
              example, if we want to find just a single file we can do this:
                  find / -name needle -print -quit

   OPERATORY
       Wymienione według malejącego priorytetu:

       ( wyraż )
              Wymusza  pierwszeństwo.  Ponieważ  nawiasy  są  znakami  specjalnymi dla powłoki, trzeba je zwykle
              cytować. Wiele przykładów z niniejszej strony podręcznika używa do tego celu odwrotnych ukośników:
              "\(...\)" zamiast "(...)".

       ! wyraż
              Prawda, jeśli wyraż jest fałszywe. Znak ten zwykle  wymaga  również  ochrony  przed  interpretacją
              przez powłokę.

       -not wyraż
              Jak ! wyraż, lecz nie jest zgodne z POSIX.

       wyraż1 wyraż2
              Dwa  wyrażenia  z rzędu są traktowane, jakby były połączone jawnym -a; wyraż2 nie jest analizowany
              jeśli 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, lecz nie jest zgodne z POSIX.

       wyraż1 -o wyraż2
              Lub ("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, lecz nie jest zgodne z POSIX.

       wyraż1 , wyraż2
              Lista; zarówno wyraż1 jak i wyraż2 są zawsze analizowane. Wartość wyraż1 jest pomijana;  wartością
              listy  jest  wartość  wyraż2. Operator w formie przecinka może być przydatny do wyszukiwania wielu
              różnych typów rzeczy, lecz przechodząc przez hierarchię systemu plików  tylko  raz.  Do  wypisania
              różnych dopasowań do wielu różnych plików wyjściowych, można użyć akcji -fprintf.

       Please  note  that  -a  when specified implicitly (for example by two tests appearing without an explicit
       operator between them) or explicitly has higher precedence than -o.  This means that find .  -name  afile
       -o -name bfile -print will never print afile.

NIETYPOWE NAZWY PLIKÓW

       Wiele akcji find skutkuje wypisywaniem danych, będących pod kontrolą innych użytkowników. Dotyczy to nazw
       plików, rozmiarów, czasów modyfikacji itp. Nazwy plików są potencjalnym problemem, ponieważ mogą zawierać
       dowolne  znaki  oprócz  "\0"  i  "/".  Nietypowe znaki w nazwach plików mogą robić nieoczekiwane i często
       nieprzewidywalne rzeczy z terminalem użytkownika (np. zmieniać ustawienia klawiszy funkcyjnych niektórych
       terminali). Nietypowe znaki są obsługiwane w różny sposób, w zależności od  akcji,  zgodnie  z  poniższym
       opisem.

       -print0, -fprint0
              Zawsze wypisuje dokładne nazwy plików, niezmienione, nawet jeśli wynik trafia na terminal

       -ls, -fls
              Nietypowe  znaki  są  zawsze  cytowane. Białe znaki, odwrotny ukośnik i znak podwójnego cudzysłowu
              jest wypisywany za pomocą cytowania w stylu C (np \f lub \" ). Inne nietypowe znaki są  wypisywane
              za  pomocą  cytowania  ósemkowego.  Inne  znaki  drukowalne  (dla  -ls i -fls są to znaki pomiędzy
              ósemkowym 041 i 0176) są wypisywane bez zmian.

       -printf, -fprintf
              Jeśli wynik nie trafia na terminal, nic nie jest zmieniane. W przeciwnym razie,  wynik  zależy  od
              używanej  dyrektywy.  Dyrektywy %D, %F, %g, %G, %H, %Y i %y są rozwijane do wartości, które nie są
              pod kontrolą właścicieli plików, są więc wypisywane bez zmian. Dyrektywy %a, %b, %c, %d,  %i,  %k,
              %m,  %M,  %n,  %s, %t, %u i %U mają wartości będące pod kontrolą właścicieli plików, lecz nie mogą
              być one użyte do wysłania dowolnych danych na terminal, dlatego są wypisywane bez zmian. Dyrektywy
              %f, %h, %l, %p i %P są cytowane. Cytowanie jest wykonywane w ten sam sposób, jak  w  GNU  ls.  Nie
              jest  to  ten sam mechanizm, co używany przez -ls i -fls. Jeśli można zdecydować o formacie wyniku
              find lepiej jest zwykle skorzystać z "\0" jako ogranicznika, zamiast używać znaku nowego  wiersza,
              ponieważ  nazwy  plików  mogą  zawierać  białe  znaki  i znaki nowego wiersza. Ustawienie zmiennej
              środowiskowej LC_CTYPE jest używane do określenia tego, które znaki mają być cytowane.

       -print, -fprint
              Cytowanie jest obsługiwane w ten sam sposób co w -printf  i  -fprintf.  Jeśli  używa  się  find  w
              skrypcie  lub  w  sytuacji, gdzie dopasowywane pliki mogą mieć dowolne nazwy, powinno się rozważyć
              skorzystanie z -print0 zamiast z -print.

       Akcje -ok i -okdir wypisują bieżące nazwy plików bez zmian. Może się to zmienić w kolejnych wydaniach.

ZGODNOŚĆ ZE STANDARDAMI

       W celu najściślejszej zgodności ze standardem POSIX, należy ustawić zmienną środowiskową POSIXLY_CORRECT.
       W standardzie POSIX (IEEE Std 1003.1-2008, 2016 Edition) określono następujące opcje:

       -H     Opcja jest obsługiwana.

       -L     Opcja jest obsługiwana.

       -name  Opcja jest obsługiwana, lecz zgodność z POSIX zależy  od  zgodności  z  POSIX  systemowej  funkcji
              bibliotecznej  fnmatch(3).  Od  wersji  findutils-4.2.2  metaznaki  powłoki  (np.  "*", "?", "[]")
              dopasują początkowe ".", ponieważ wymaga tego interpretacja  126  IEEE  PASC.  Jest  to  zmiana  w
              stosunku do poprzednich wersji findutils.

       -type  Supported.   POSIX  specifies  `b',  `c', `d', `l', `p', `f' and `s'.  GNU find also supports `D',
              representing a Door, where the OS provides these.  Furthermore, GNU find allows multiple types  to
              be specified at once in a comma-separated list.

       -ok    Obsługiwane.  Interpretacja  odpowiedzi  jest  zgodna  z  wzorcami  "yes"  i  "no" wybranymi przez
              ustawienie  zmiennej  środowiskowej  LC_MESSAGES.  Gdy   ustawiona   jest   zmienna   środowiskowa
              POSIXLY_CORRECT,  wzorce  te  są  wzięte  z  systemowych definicji odpowiedzi pozytywnej (yes) lub
              negatywnej (no). Proszę zapoznać się z  systemową  dokumentacją  nl_langinfo(3),  w  szczególności
              YESEXPR  i  NOEXPR.  Gdy  POSIXLY_CORRECT  nie jest ustawiona, wzorce są brane z własnego katalogu
              komunikatów find.

       -newer Obsługiwane. Jeśli podany plik jest dowiązaniem symbolicznym, jest zawsze  rozwiązywany.  Jest  to
              zmiana w stosunku do wcześniejszego zachowania, gdy odpowiedni czas był brany z samego dowiązania;
              patrz poniższy rozdział HISTORIA.

       -perm  Obsługiwane. Jeśli zmienna środowiskowa POSIXLY_CORRECT nie jest ustawiona, część argumentów trybu
              (np.  +a+x), która nie jest prawidłowa w POSIX, jest obsługiwana w celu zachowania kompatybilności
              wstecznej.

       Other primaries
              The primaries -atime, -ctime, -depth, -exec,  -group,  -links,  -mtime,  -nogroup,  -nouser,  -ok,
              -path, -print, -prune, -size, -user and -xdev are all supported.

       Standard POSIX określa nawiasy "(", ")", negację "!" i operatory logiczne ORAZ/LUB -a i -o.

       Wszystkie  inne  opcje,  wskazania,  wyrażenia itd. są rozszerzeniami wykraczającymi poza standard POSIX.
       Wiele z nich nie jest jednak unikalnych dla GNU find.

       Standard POSIX wymaga wykrywania przez find pętli:

              Narzędzie find powinno wykrywać pętle nieskończone, tj.  gdy  wchodzi  do  wcześniej  odwiedzonego
              katalogu,  będącego  przodkiem  pliku,  który  wystąpił  jako ostatni. Gdy pętla nieskończona jest
              wykrywana, find powinien wypisać informację diagnostyczną na standardowe wyjście błędów i powinien
              albo odzyskać swą pozycję w hierarchii albo wyjść.

       GNU  find  jest  zgodny  z  tymi  wymaganiami.  Liczba  dowiązań  katalogów  zawierających  wpisy  będące
       dowiązaniami  zwykłymi  (twardymi) do katalogu nadrzędnego będzie często niższa, niż powinna być. Oznacza
       to, że GNU find czasami zoptymalizuje liczbę sprawdzeń  podkatalogów  będących  dowiązaniem  do  katalogu
       nadrzędnego.  Ponieważ find nie wchodzi w rzeczywistości do każdego podkatalogu, może unikać wyświetlania
       komunikatu diagnostycznego. Choć to zachowanie może być niekiedy mylące,  jest  mało  prawdopodobne,  aby
       ktokolwiek  na nim polegał. Jeśli optymalizacja "liściowa" (ang. leaf optimisation) zostanie wyłączona za
       pomocą -noleaf, wpis katalogu zostanie zawsze sprawdzony, a gdy to będzie  konieczne,  zostanie  wypisany
       komunikat  diagnostyczny.  Dowiązanie symboliczne nie może być użyte do tworzenia podobnych cykli systemu
       plików, lecz jeśli działa opcja -L lub -follow,  komunikat  diagnostyczny  zostanie  wypisany,  gdy  find
       natrafi  na  pętlę  dowiązań  symbolicznych.  Podobnie  jak  w  przypadku  pętli  z dowiązaniami zwykłymi
       (twardymi), optymalizacja liściowa często będzie oznaczać, że find wie, iż nie musi wywoływać stat()  lub
       chdir() na dowiązaniu symbolicznym, więc taka diagnostyka często nie jest konieczna.

       Opcja  -d  jest  obsługiwana  w  celu  kompatybilności z różnymi systemami BSD, lecz powinno się w zamian
       używać zgodną z POSIX opcję -depth.

       Zmienna środowiskowa POSIXLY_CORRECT nie wpływa na zachowanie testów -regex ani -iregex,  ponieważ  opcje
       te nie są określone w standardzie POSIX.

ZMIENNE ŚRODOWISKOWE

       LANG   Dostarcza  domyślną  wartość  do zmiennych dotyczących umiędzynarodowienia, które nie są ustawione
              lub są puste.

       LC_ALL Jeśli  jest  ustawiona  na  niepusty  łańcuch,  przesłania  wartość  wszystkich  innych  zmiennych
              dotyczących umiędzynarodowienia.

       LC_COLLATE
              Standard  POSIX  określa, że ta zmienna wpływa na dopasowanie wzorców używanych przez opcję -name.
              GNU find używa funkcji bibliotecznej fnmatch(3), w związku z  tym  obsługa  LC_COLLATE  zależy  od
              biblioteki  systemowej. Zmienna ta wpływa również na interpretację odpowiedzi na -ok - podczas gdy
              zmienna LC_MESSAGES wybiera rzeczywisty  wzorzec  używany  do  interpretacji  odpowiedzi  na  -ok,
              interpretacja wyrażeń klamrowych we wzorcu będzie zależna od LC_COLLATE.

       LC_CTYPE
              Zmienna  wpływa  na  traktowanie  klas  znaków  używanych w wyrażeniach regularnych, jak również w
              teście -name, jeśli obsługuje to systemowa funkcja biblioteczna fnmatch(3). Zmienna wpływa również
              na interpretację klas znakowych w wyrażeniach regularnych używanych do interpretacji odpowiedzi na
              pytanie wydane przez -ok. Zmienna środowiskowa LC_CTYPE wpływa  również  na  to,  które  znaki  są
              uważane za niedrukowalne przy wypisywaniu nazw plików; patrz rozdział NIETYPOWE NAZWY PLIKÓW.

       LC_MESSAGES
              Określa  język (lokale) komunikatów. Jeśli ustawiona jest zmienna środowiskowa POSIXLY_CORRECT, to
              określa również interpretację na odpowiedź na pytanie zadane przez akcję -ok.

       NLSPATH
              Określa lokalizację katalogów z przetłumaczonymi komunikatami.

       PATH   Wpływa na katalogi, które są przeszukiwane przez find w celu  wykonania  plików  wywołanych  przez
              -exec, -execdir, -ok i -okdir.

       POSIXLY_CORRECT
              Określa  rozmiar  bloku  używany  przez  -ls i -fls. Jeśli ustawiona jest zmienna POSIXLY_CORRECT,
              bloki mają po 512 bajtów. W przeciwnym wypadku - 1024 bajtów.

              Ustawienie tej zmiennej domyślnie wyłącza również ostrzeżenia (tzn. implikuje  -nowarn),  ponieważ
              niezależnie od wyniku -ok, POSIX wymaga aby wszystkie komunikaty wypisywane na standardowe wyjście
              błędów były diagnostyczne i wynikał z nich niezerowy kod zakończenia.

              Gdy  POSIXLY_CORRECT  nie jest ustawiona, -perm +zzz jest traktowane jak -perm /zzz jeśli +zzz nie
              jest prawidłowym trybem symbolicznym. Gdy POSIXLY_CORRECT jest  ustawiona,  takie  konstrukcje  są
              traktowane jako błąd.

              Gdy   POSIXLY_CORRECT   jest  ustawiona,  odpowiedź  na  pytanie  zadane  przez  akcję   -ok  jest
              interpretowane zgodnie z katalogiem systemowym wiadomości, a nie zgodnie z własnymi  tłumaczeniami
              komunikatów programu find.

       TZ     Wpływa  na strefę czasową używaną przez część związanych z czasem dyrektyw formatu opcji -printf i
              -fprintf.

PRZYKŁADY

   Prostsze podejście "find|xargs"
       •      Znajduje pliki o nazwie core w lub poniżej katalogu /tmp i usuwa je.

                  $ find /tmp -name core -type f -print | xargs /bin/rm -f

              Proszę zauważyć, że przykład nie będzie działał poprawnie, jeśli w którejś z nazw są znaki  nowego
              wiersza, pojedyncze lub podwójne cudzysłowy lub spacje.

   Bezpieczniejsze podejście "find -print0 | xargs -0"
       •      Znajduje  pliki o nazwie core w lub poniżej katalogu /tmp i usuwa je, przetwarzając nazwy plików w
              ten sposób, że nazwy zawierające pojedyncze lub  podwójne  cudzysłowy,  spacji  lub  znaki  nowego
              wiersza są obsługiwane poprawnie.

                  $ find /tmp -name core -type f -print0 | xargs -0 /bin/rm -f

              Test -name jest wykonywany przed testem -type, aby zapobiec wywoływaniu stat(2) na każdym pliku.

       Note  that  there  is  still  a  race between the time find traverses the hierarchy printing the matching
       filenames, and the time the process executed by xargs works with that file.

   Processing arbitrary starting points
       •      Given that another program proggy pre-filters and creates a  huge  NUL-separated  list  of  files,
              process those as starting points, and find all regular, empty files among them:

                  $ proggy | find -files0-from - -maxdepth 0 -type f -empty

              The  use  of  `-files0-from -` means to read the names of the starting points from standard input,
              i.e., from the pipe; and -maxdepth 0 ensures that  only  explicitly  those  entries  are  examined
              without recursing into directories (in the case one of the starting points is one).

   Wykonywanie polecenia dla każdego pliku
       •      Uruchamia file na każdym pliku w lub poniżej katalogu bieżącego.

                  $ find . -type f -exec plik '{}' \;

              Proszę  zwrócić uwagę, że nawiasy klamrowe są ujęte w pojedyncze cudzysłowy, aby ochronić je przed
              interpretację przez interpunkcję skryptów powłoki. Średnik jest również chroniony, przez  odwrotny
              ukośnik, choć pojedyncze cudzysłowy byłyby równie dobre.

       In  many  cases, one might prefer the `-exec ... +` or better the `-execdir ... +` syntax for performance
       and security reasons.

   Przechodzenie przez system plików jednokrotnie - wykonując 2 różne akcje
       •      Przeszukuje  system  plików  jeden  raz,  wypisując  pliki  i  katalogi  z  set-user-ID  do  pliku
              /root/suid.txt, a duże pliki do /root/big.txt.

                  $ find / \
                      \( -perm -4000 -fprintf /root/suid.txt '%#m %u %p\n' \) , \
                      \( -size +100M -fprintf /root/big.txt '%-10s %p\n' \)

              This example uses the line-continuation character '\' on the first two lines to instruct the shell
              to continue reading the command on the next line.

   Wyszukiwanie plików według wieku
       •      Wyszukuje  pliki  w katalogu domowym użytkownika, które zostały zmodyfikowane w ciągu ostatnich 24
              godzin.

                  $ find $HOME -mtime 0

              To polecenie działa w ten sposób, ponieważ czas od ostatniej  modyfikacji  pliku  jest  podzielony
              przez 24 godziny, a reszta jest odrzucana. Oznacza to, że aby pasować do -mtime 0, plik musiał być
              zmodyfikowany mniej niż 24 godziny temu.

   Wyszukiwanie plików według uprawnień
       •      Wyszukuje pliki wykonywalne, lecz nieodczytywalne.

                  $ find /sbin /usr/sbin -executable \! -readable -print

       •      Wyszukuje  pliki  posiadające  prawa odczytu i zapisu dla właściciela i grupy, które dla innych są
              odczytywalne, lecz nie są zapisywalne.

                  $ find . -perm 664

              Pliki, które spełniają te kryteria lecz mają ustawione inne bity praw (np. wykonywalności) nie  są
              dopasowane.

       •      Wyszukuje  pliki  posiadające  prawa odczytu i zapisu dla właściciela i grupy, które dla innych są
              odczytywalne, bez względu na obecność jakichś dodatkowych bitów praw (np. bitu wykonywalności).

                  $ find . -perm -664

              Dopasowany będzie też np. plik z trybem 0777.

       •      Wyszukuje pliki, które są przez kogoś zapisywalne (dla ich właściciela, grupy lub innych).

                  $ find . -perm /222

       •      Wyszukuje pliki, które są przez zapisywalne dla ich właściciela lub dla ich grupy.

                  $ find . -perm /220
                  $ find . -perm /u+w,g+w
                  $ find . -perm /u=w,g=w

              Wszystkie trzy polecenia wykonują to samo, lecz pierwsze używa reprezentacji ósemkowej praw lików,
              a pozostałe dwa - postaci symbolicznej. Pliki nie muszą być zapisywalne zarówno przez  właściciela
              jak i grupę, aby zostać dopasowane; wystarczy spełnić jeden warunek.

       •      Wyszukuje pliki, które są zapisywalne dla ich właściciela oraz dla ich grupy.

                  $ find . -perm -220
                  $ find . -perm -g+w,u+w

              Oba te polecenia robią to samo.

       •      Bardziej skomplikowane przeszukiwanie uprawnień.

                  $ find . -perm -444 -perm /222 \! -perm /111
                  $ find . -perm -a+r -perm /a+w \! -perm /a+x

              Oba  polecenia  wyszukują  pliki  odczytywalne  dla wszystkich (-perm -444 lub -perm -a+r), mające
              ustawiony co najmniej jeden bit zapisu (-perm /222 lub -perm /a+w), lecz  nie  będące  wykonywalne
              dla kogokolwiek (odpowiednio ! -perm /111 lub ! -perm /a+x).

   Wycinanie - pomijanie plików i podkatalogów
       •      Polecenie  to kopiuje zawartość /source-dir do /dest-dir, lecz pomija pliki lub katalogi o nazwach
              .snapshot (i wszystko wewnątrz ich). Pomija również pliki lub katalogi o nazwach kończących się na
              "~", lecz nie ich zawartość.

                  $ cd /source-dir
                  $ find . -name .snapshot -prune -o \( \! -name '*~' -print0 \) \
                      | cpio -pmd0 /dest-dir

              Konstrukcja -prune -o \( ... -print0 \) jest dość częsta. Pomysł jest  taki,  że  wyrażenie  przed
              -prune  dopasowuje  rzeczy,  które  mają być wycięte. Jednak sama akcja -prune zwraca prawdę, więc
              kolejna -o upewnia się, że prawa strona jest obliczana tylko dla niewyciętych katalogów (zawartość
              wycinanych katalogów nie jest nawet sprawdzana, więc ich zawartość jest nieistotna). Wyrażenie  po
              prawej  stronie  -o,  znajduje  się  w  nawiasach  jedynie dla przejrzystości. Podkreśla, że akcja
              -print0 ma miejsce jedynie do  rzeczy,  do  których  nie  zastosowano  -prune.  Ponieważ  domyślna
              zależność "and" (i) jest ściślejsza niż -o, tak jest domyślnie, lecz nawiasy pomagają pokazać o co
              chodzi.

       •      Podając  następujący  katalog  projektu  i powiązany katalog administracyjny SCM, wykonuje wydajne
              wyszukiwanie korzeni projektów:

                  $ find repo/ \
                      \( -exec test -d '{}/.svn' \; \
                      -or -exec test -d '{}/.git' \; \
                      -or -exec test -d '{}/CVS' \; \
                      \) -print -prune

              Przykładowe wyjście:

                  repo/project1/CVS
                  repo/gnu/project2/.svn
                  repo/gnu/project3/.svn
                  repo/gnu/project3/src/.svn
                  repo/project4/.git

              W tym przykładzie, -prune zapobiega niepotrzebnemu zagłębianiu się w już odkryte katalogi (np. nie
              szuka się w project3/src, ponieważ znaleziono już project3/.svn), lecz znajduje katalogi sąsiednie
              (project2 i project3).

   Inne przydatne przykłady
       •      Wyszukiwanie różnych typów plików.

                  $ find /tmp -type f,d,l

              Search for files, directories, and symbolic links in the directory /tmp passing these types  as  a
              comma-separated  list  (GNU  extension),  which  is  otherwise  equivalent to the longer, yet more
              portable:

                  $ find /tmp \( -type f -o -type d -o -type l \)

       •      Search for files with the particular name needle and stop immediately when we find the first one.

                  $ find / -name needle -print -quit

       •      Demonstrate the interpretation of the %f and %h format directives of the -printf action  for  some
              corner-cases.  Here is an example including some output.

                  $ find . .. / /tmp /tmp/TRACE compile compile/64/tests/find -maxdepth 0 -printf '[%h][%f]\n'
                  [.][.]
                  [.][..]
                  [][/]
                  [][tmp]
                  [/tmp][TRACE]
                  [.][compile]
                  [compile/64/tests][find]

STATUS ZAKOŃCZENIA

       find  wychodzi  ze  statusem 0, gdy pomyślnie przetworzono wszystkie pliki i większym niż 0, gdy wystąpił
       błąd. Jest to bardzo ogólny opis, lecz gdy zwracaną wartością nie jest zero, nie powinno  się  po  prostu
       polegać na poprawności wyników find.

       When  some  error  occurs,  find may stop immediately, without completing all the actions specified.  For
       example, some starting points may not  have  been  examined  or  some  pending  program  invocations  for
       -exec ... {} + or -execdir ... {} + may not have been performed.

HISTORIA

       Od  findutils-4.2.2,  metaznaki  powłoki (np. "*", "?" lub "[]") używane we wzorcach nazw plików dopasują
       początkowe ".", ponieważ wymaga tego interpretacja 126 IEEE POSIX.

       Od findutils-4.3.3, -perm /000 dopasowuje wszystkie pliki, zamiast żadnego.

       W findutils-4.3.3 zaimplementowano nanosekundową rozdzielczość znaczników czasu.

       Od findutils-4.3.11, akcja -delete ustawia kod zakończenia find  na  wartość  niezerową,  jeśli  się  nie
       powiedzie.  find nie wyjdzie jednak od razu. Wcześniej, kod zakończenia find nie zmieniał się pod wpływem
       niepowodzenia -delete.
       Funkcja                Dodana w   Pojawia się też w
       -files0-from           4.9.0
       -newerXY               4.3.3      BSD
       -D                     4.3.1
       -O                     4.3.1
       -readable              4.3.0
       -writable              4.3.0
       -executable            4.3.0
       -regextype             4.2.24
       -exec ... +            4.2.12     POSIX
       -execdir               4.2.12     BSD
       -okdir                 4.2.12
       -samefile              4.2.11
       -H                     4.2.5      POSIX
       -L                     4.2.5      POSIX
       -P                     4.2.5      BSD
       -delete                4.2.3
       -quit                  4.2.3
       -d                     4.2.3      BSD
       -wholename             4.2.0
       -iwholename            4.2.0
       -ignore_readdir_race   4.2.0
       -fls                   4.0
       -ilname                3.8
       -iname                 3.8
       -ipath                 3.8
       -iregex                3.8

       The syntax -perm +MODE was removed in findutils-4.5.12, in favour of -perm /MODE.  The +MODE  syntax  had
       been deprecated since findutils-4.2.21 which was released in 2005.

TO NIE BŁĘDY

   Zaskakująca kolejność operatorów
       The  command  find  .  -name  afile -o -name bfile -print will never print afile because this is actually
       equivalent to find . -name afile -o \( -name bfile -a -print \).  Remember that the precedence of  -a  is
       higher than that of -o and when there is no operator specified between tests, -a is assumed.

   “paths must precede expression” error message
       $ find . -name *.c -print
       find: paths must precede expression
       find: possible unquoted pattern after predicate `-name'?

       This  happens  when  the  shell  could  expand the pattern *.c to more than one file name existing in the
       current directory, and passing the resulting file names in the command line to find like this:
       find . -name frcode.c locate.c word_io.c -print
       That command is of course not going to work, because the -name predicate allows exactly only one  pattern
       as  argument.   Instead  of doing things this way, you should enclose the pattern in quotes or escape the
       wildcard, thus allowing find to use the pattern with  the  wildcard  during  the  search  for  file  name
       matching instead of file names expanded by the parent shell:
       $ find . -name '*.c' -print
       $ find . -name \*.c -print

USTERKI

       Występują pewne zagrożenia związane z bezpieczeństwem, będące wynikiem tego, co standard POSIX przewiduje
       dla  find  -  dlatego  nie  mogą być naprawione. Na przykład akcja -exec jest niebezpieczna i powinno się
       używać w zamian -execdir.

       Zmienna środowiskowa LC_COLLATE nie ma wpływu na akcję -ok.

ZGŁASZANIE BŁĘDÓW

       Strona internetowa z pomocą GNU findutils: <https://www.gnu.org/software/findutils/#get-help>
       O błędach tłumaczenia programu prosimy poinformować przez <https://translationproject.org/team/pl.html>

       Wszelkie inne problemy prosimy zgłaszać za pomocą systemu śledzenia błędów GNU Savannah:
              <https://savannah.gnu.org/bugs/?group=findutils>
       Do ogólnej dyskusji na tematy związane z pakietem GNU findutils służy lista dyskusyjna bug-findutils:
              <https://lists.gnu.org/mailman/listinfo/bug-findutils>

PRAWA AUTORSKIE

       Copyright © 1990-2022 Free Software Foundation, Inc. Licencja GPLv3+: GNU GPL w wersji 3 lub  późniejszej
       <https://gnu.org/licenses/gpl.html>.
       Jest  to  wolne oprogramowanie: można je zmieniać i rozpowszechniać. Nie ma ŻADNEJ GWARANCJI, w granicach
       określonych przez prawo.

ZOBACZ TAKŻE

       chmod(1), locate(1), ls(1), updatedb(1), xargs(1), lstat(2), stat(2),  ctime(3)   fnmatch(3),  printf(3),
       strftime(3), locatedb(5), regex(7)

       Pełna dokumentacja: <https://www.gnu.org/software/findutils/find>
       albo dostępna lokalnie przez: info find

TŁUMACZENIE

       Autorami  polskiego  tłumaczenia  niniejszej strony podręcznika są: Przemek Borys <pborys@dione.ids.pl> i
       Michał Kułach <michal.kulach@gmail.com>

       Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje  o  warunkach  licencji  można  uzyskać
       zapoznając   się   z   GNU General Public License w wersji 3   lub  nowszej.  Nie  przyjmuje  się  ŻADNEJ
       ODPOWIEDZIALNOŚCI.

       Błędy w  tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej  manpages-pl-
       list@lists.sourceforge.net.

                                                                                                         FIND(1)