Provided by: manpages-pl_4.26.0-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   Show the expression tree in its original and optimized form.

              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      At this optimisation level, the full cost-based query optimizer is enabled.  The  order  of
                     tests  is  modified so that cheap (i.e. fast)  tests are performed first and more expensive
                     ones are performed later, if necessary.  Within each cost band,  predicates  are  evaluated
                     earlier  or  later  according  to  whether  they  are  likely  to  succeed or not.  For -o,
                     predicates which are likely to succeed are evaluated earlier, and for -a, predicates  which
                     are likely to fail are evaluated earlier.

              The  cost-based  optimizer  has  a fixed idea of how likely any given test is to succeed.  In some
              cases the probability takes account of the specific nature of the test (for  example,  -type f  is
              assumed  to  be more likely to succeed than -type c).  The cost-based optimizer is currently being
              evaluated.  If it does not actually improve the performance of find, it  will  be  removed  again.
              Conversely,  optimisations that prove to be reliable, robust and effective may be enabled at lower
              optimisation levels over time.  However, the default behaviour (i.e. optimisation  level  1)  will
              not  be  changed in the 4.3.x release series.  The findutils test suite runs all the tests on find
              at each optimisation level and ensures that the result is the same.

              The re-ordering of operations performed by the cost-based optimizer  can  result  in  user-visible
              behaviour  change.  For example, the -readable and -empty predicates are sensitive to re-ordering.
              If they are run in the order -empty -readable, an error message  will  be  issued  for  unreadable
              directories.   If they are run in the order -readable -empty no error message will be issued. This
              is the reason why such operation re-ordering is not performed at the default optimisation level.

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.   If  you  do  not use this option, find behaves as if the regular
              expression type emacs had been specified.

       -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
       Global options always return true.  Global options take effect even for tests which occur earlier on  the
       command  line.   To  prevent  confusion, global options should be specified on the command-line after the
       list of start points, just before the first test, positional option or action.  If you specify  a  global
       option in some other place, find will issue a warning message explaining that this can be confusing.

       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
              File  was last accessed less than, more than or exactly n*24 hours ago.  When find figures out how
              many 24-hour periods ago the file was last accessed, any fractional part is ignored, so  to  match
              -atime +1, a file has to have been accessed at least two days ago.

       -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 of the file names are removed, the pattern should  not  include  a
              slash, because `-name a/b' will never match anything (and you probably want to use -path instead).
              An  exception  to  this is when using only a slash as pattern (`-name /'), because that is a valid
              string for matching the root directory "/" (because the base name of "/" is "/").   A  warning  is
              issued  if  you  try  to  pass  a pattern containing a - but not consisting solely of one - slash,
              unless the environment variable POSIXLY_CORRECT is set or the option -nowarn is used.

              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
              File name matches regular expression pattern.  This is a match on the whole path,  not  a  search.
              For  example,  to  match  a  file  named  ./fubar3, you can use the regular expression `.*bar.' or
              `.*b.*3', but not `f.*r3'.  The regular expressions  understood  by  find  are  by  default  Emacs
              Regular Expressions, but this can be changed with the -regextype option.

       -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
              The same as -type unless the file is a symbolic link.  For symbolic links: if the -H or -P  option
              was  specified,  true  if the file is a link to a file of type c; if the -L option has been given,
              true if c is `l'.  In other words, for symbolic links, -xtype checks the type  of  the  file  that
              -type does not check.  If a symbolic link is broken (because the thing it points to does not exist
              or the link points to itself) then -xtype will behave the same as -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:

              The  find  utility  shall  detect infinite loops; that is, entering a previously visited directory
              that is an ancestor of the last file encountered.  When it detects an infinite  loop,  find  shall
              write  a  diagnostic  message  to  standard  error  and  shall  either recover its position in the
              hierarchy or terminate.

       GNU find complies with these requirements.  The link count of directories which contain entries which are
       hard links to an ancestor will often be lower than they otherwise should be.  This can mean that GNU find
       will sometimes optimize away the visiting of a subdirectory which is actually  a  link  to  an  ancestor.
       Since  find  does  not  actually  enter such a subdirectory, it is allowed to avoid emitting a diagnostic
       message.  Although this behaviour may be somewhat confusing, it is unlikely that anybody actually depends
       on this behaviour.  If the leaf optimisation has been turned off with -noleaf, the directory  entry  will
       always  be  examined  and  the diagnostic message will be issued where it is appropriate.  Symbolic links
       cannot be used to create filesystem cycles as such, but if the -L option or the -follow option is in use,
       a diagnostic message is issued when find encounters a loop of symbolic links.  As with  loops  containing
       hard  links, the leaf optimisation will often mean that find knows that it doesn't need to call stat() or
       chdir() on the symbolic link, so this diagnostic is frequently not necessary.

       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

       A find program appeared in Version 5 Unix as part of the Programmer's Workbench project and  was  written
       by  Dick Haight.  Doug McIlroy's A Research UNIX Reader: Annotated Excerpts from the Programmer’s Manual,
       1971-1986    provides    some    additional    details;    you     can     read     it     on-line     at
       <https://www.cs.dartmouth.edu/~doug/reader.pdf>.

       GNU  find was originally written by Eric Decker, with enhancements by David MacKenzie, Jay Plett, and Tim
       Wood.  The idea for find -print0 and xargs -0 came from Dan Bernstein.

ZGODNOŚĆ

       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–2024 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)