Provided by: manpages-pl_20060617-2_all bug

NAZWA

       find - szuka plików w hierarchii katalogowej

SKŁADNIA

       find [ścieżka...] [wyrażenie]

OPIS

       Ta  strona  podręcznika  man  opisuje  wersję  GNU programu find.  find
       przeszukuje drzewo katalogowe, zakorzenione w każdej  z  podanych  nazw
       plików.  Wykonuje przy tym podane wyrażenie od lewej do prawej, zgodnie
       z zasadami priorytetów  (zobacz  sekcję  OPERATORY),  aż  do  ustalenia
       wyniku  (lewa  strona  jest  fałszywa dla operacji and, a prawdziwa dla
       or), co powoduje przejście do następnej nazwy pliku.

       Pierwszy argument, rozpoczynający się od `-', `(',  `)',  `,'  lub  `!'
       jest  uważany  za  początek  wyrażenia; wszelkie argumenty przed nim są
       ścieżkami przeszukiwania,  a  wszystkie  argumenty  po  nim  są  resztą
       wyrażenia.   Jeśli  nie  podano  ścieżek, używany jest katalog bieżący.
       Jeśli nie podano wyrażenia, używane jest wyrażenie `-print'.

       find kończy działanie ze statusem 0 tylko gdy wszystkie  pliki  zostaną
       poprawnie  przetworzone.  W  przeciwnym  wypadku status jest większy od
       zera.

WYRAŻENIA

       Wyrażenie jest  złożone  z  opcji  (które  tyczą  się  raczej  ogólnego
       działania,  niż  przetwarzania  konkretnego  pliku  i  zawsze  zwracają
       prawdę), testów (które sprawdzają wartość prawdy lub  fałszu)  i  akcji
       (które  mają efekty uboczne i zwracają wartość prawdziwą lub fałszywą);
       wszystkie te elementy są rozdzielone operatorami.  -and jest  domyślnym
       operatorem,  przyjmowanym  w  przypadku pominięcia go w jawnym zapisie.
       Jeśli wyrażenie nie zawiera innych akcji niż -prune, to  na  wszystkich
       plikach, dla których jest ono prawdziwe, wykonywany jest -print.

   OPCJE
       Wszystkie  opcje  zawsze  zwracają prawdę. Zawsze działają, tzn. nie są
       przetwarzane jedynie gdy osiągnięta zostanie ich pozycja  w  wyrażeniu.
       Dlatego,  dla jasności najlepiej umiejscawiać je na początku wyrażenia.

       -daystart
              Mierzy czasy (dla  -amin,  -atime,  -cmin,  -ctime,  -mmin,  and
              -mtime) od dziś, a nie od 24 godzin temu.

       -depth Przetwarza  zawartość  każdego  katalogu  przed samym katalogiem
              jako takim.

       -follow
              Rozwikłuje dowiązania symboliczne. Wymusza -noleaf.

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

       -maxdepth gboko
              Schodzi   maksymalnie  gboko  (nieujemna  liczba  całkowita)
              poziomów katalogów od argumentów wiersza poleceń. `-maxdepth  0'
              oznacza,  by  testy i akcje stosować tylko do argumentów wiersza
              poleceń.

       -mindepth lgboko
              Nie stosuje testów lub akcji w poziomach niższych niż  gboko
              (nieujemna    liczba    całkowita).    `-mindepth   1'   oznacza
              przetwarzanie  wszystkich  plików   poza   argumentami   wiersza
              poleceń.

       -mount Nie  zagłębia się w katalogi na innych systemach plików. Jest to
              alternatywna nazwa dla -xdev, stworzona dla zgodności  z  innymi
              wersjami find.

       -noleaf
              Zakazuje optymalizacji wykonywanej przez zakładanie, że katalogi
              zawierają o dwa  mniej  podkatalogi  niż  ich  licznik  twardych
              dowiązań. Opcja ta jest wymagana podczas przeszukiwania systemów
              plików,  które  nie   używają   uniksowej   konwencji   wiązania
              katalogów,   takich   jak  systemy  plików  CD-ROM,  MS-DOS  czy
              wolumenów AFS. Każdy  katalog  w  normalnym  systemie  uniksowym
              zawiera  przynajmniej  dwa  twarde dowiązania: jego nazwę i `.'.
              Dodatkowo, jego podkatalogi mogą mieć dowiązania `..'.  Gdy find
              testuje  katalog po zbadaniu funkcją stat o 2 mniej podkatalogów
              niż licznik dowiązań, wie, że reszta wpisów jest  niekatalogowa.
              Jeśli  testowane mają być tylko nazwy plików, to nie ma potrzeby
              ich sprawdzać; daje to znaczące przyspieszenie.

       -version, --version
              Wypisuje wersję i kończy pracę.

       -xdev  Nie zagłębia się w katalogi na innych systemach plików.

   TESTY
       Wartości numeryczne mogą być podawane jako

       +n     dla większych niż n,

       -n     dla mniejszych niż n,

       n      dla równych n.

       -amin n
              Dostęp do pliku nastąpił ostatnio n minut temu.

       -anewer plik
              Do  pliku  ostatnio  dostano  się  wcześniej  niż  plik   został
              zmodyfikowany.   -anewer  podlega  -follow  tylko  jeśli -follow
              pojawia się w linii komend przed -anewer.

       -atime n
              Do pliku dostano się po raz ostatni n*24 godzin temu.

       -cmin n
              Status pliku został zmieniony n minut temu.

       -cnewer plik
              Status pliku był ostatnio zmieniony wcześniej niż  zmodyfikowano
              plik.  -cnewer podlega -follow tylko jeśli -follow pojawia się w
              linii komend przed -cnewer.

       -ctime n
              Status pliku zmienił się ostatnio n*24 godzin temu.

       -empty Plik jest pusty i jest albo plikiem regularnym, albo katalogiem.

       -false Zawsze fałszywe.

       -fstype typ
              Plik  jest  na  systemie  plików  o  typie  typ. Prawidłowe typy
              systemów plików różnią  się  na  różnych  wersjach  Uniksa;  ich
              niekompletna lista, która jest przyjmowana w części systemów to:
              ufs, 4.2, 4.3, nfs, tmp, mfs, S51K,  S52K.   Aby  zobaczyć  typy
              twoich systemów plików, użyj -printf z dyrektywą %F.

       -gid n Numeryczny GID pliku to n.

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

       -ilname pattern
              Podobne do -lname, lecz dopasowania są  niewrażliwe  na  rozmiar
              liter.

       -iname pattern
              Podobne  do  -name, lecz dopasowanie jest niewrażliwe na rozmiar
              liter.  Na przykład wzorce `fo*' i `F??' dopasują  się  do  nazw
              `Foo', `FOO', `foo', `fOo', itd.

       -inum n
              Plik ma numer iwęzła n.

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

       -iregex wzorzec
              Podobne do -regex, lecz dopasowanie jest niewrazliwe na  rozmiar
              liter.

       -links n
              Plik ma n dowiązań.

       -lname wzorzec
              Plik  jest dowiązaniem symbolicznym, którego zawartość odpowiada
              wzorcowi powłoki wzorzec. Metaznaki nie traktują specjalnie  `/'
              i `.'.

       -mmin n
              Dane pliku były ostatnio modyfikowane n minut temu.

       -mtime n
              Dane pliku były ostatnio modyfikowane n*24 godzin temu.

       -name wzorzec
              Podstawa  nazwy  pliku  (z  usuniętą  ścieżką  i poprzedzającymi
              katalogami) odpowiada wzorcowi powłoki wzorzec. Metaznaki  (`*',
              `?',  `[]')  nie  odpowiadają  `.'  na początku nazwy pliku. Aby
              zignorować katalogi i pliki im  podległe,  użyj  -prune;  zobacz
              przykład w opisie -path.

       -newer plik
              Plik  został  zmodyfikowany  wcześniej niż plik.  -newer podlega
              -follow tylko jeśli -follow znajduje się w  linii  komend  przed
              -newer.

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

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

       -path wzorzec
              Nazwa  pliku  odpowiada  wzorcowi powłoki wzorzec. Metaznaki nie
              traktują specjalnie `/' lub `.'; tak więc na przykład,
                        find . -path './sr*sc'
              wypisze  wpis  katalogowy  o  nazwie  './src/misc'  (jeśli  taki
              istnieje).   Aby zignorować całe drzewo katalogowe, użyj -prune.
              Na przykład, aby pominąć katalog `src/emacs'  i  wszystkie  jego
              pliki oraz wypisać nazwy innych znalezionych plików, użyj:
                        find . -path './src/emacs' -prune -o -print

       -perm prawa
              Bity  praw  pliku  są  dokładnie  równe  prawom  (ósemkowym  lub
              symbolicznym). Prawa symboliczne używają 0 jako punktu  wyjścia.

       -perm -prawa
              wszystkie bity prawa są ustawione dla pliku.

       -perm +prawa
              Któryś z bitów praw jest ustawiony dla pliku.

       -regex wzorzec
              Nazwa pliku odpowiada wyrażeniu regularnemu wzorzec. Dopasowanie
              stosuje  się  do  całej  ścieżki,  nie  dla  przeszukiwanej.  Na
              przykład,  aby  dopasować  plik o nazwie `./fubar3', możesz użyć
              wyrażenia regularnego `.*bar' lub `.*b.*3'.

       -size n[bckw]
              Plik  zajmuje  n  jednostek  miejsca.  Jednostki  to   domyślnie
              512-bajtowe  bloki.  Jeśli  doklejona jest litera `c', jest to n
              bajtów, jeśli `k', kilobajtów,  jeśli  `w',  dwubajtówych  słów.
              Rozmiar  nie  wlicza niebezpośrednich bloków, lecz liczy bloki w
              plikach `sparse', które w rzeczywistości nie są zajęte.

       -true  Zawsze prawda.

       -type c
              Plik jest typu c:

              b      blokowy (buforowany) plik specjalny

              c      znakowy (niebuforowany) plik specjalny

              d      katalog

              p      łącze nazwane (FIFO)

              f      zwykły plik

              l      dowiązanie symboliczne

              s      gniazdo

       -uid n Numeryczny UID pliku to n.

       -used n
              Do pliku ostatnio dostano się n dni po zmianie jego statusu.

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

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

   AKCJE
       -exec polecenie ;
              Wykonuje polecenie; prawdziwe jeśli zwrócony  został  status  0.
              Wszelkie   następne   argumenty   find  są  brane  za  argumenty
              polecenia, aż nie zostanie napotkany argument, składający się  z
              `;'. Łańcuch `{}' jest podmieniany na obecnie przetwarzaną nazwę
              pliku.   Obydwie  te  konstrukcje   być   może   będą   wymagały
              wycytowania  (znakiem  `\')  aby  uchronić je przed rozwinięciem
              przez powłokę. Polecenie jest wykonywane w katalogu startowym.

       -fls plik
              Prawdziwe; podobne do -ls, lecz zapisuje do pliku jak -fprint.

       -fprint plik
              Prawdziwe; wypisuje pełną nazwę pliku do pliku. Jeśli  plik  nie
              istnieje,  zostanie utworzony; jeśli istnieje, zostanie obcięty.
              Nazwy plików ``/dev/stdout''  i  ``/dev/stderr''  są  traktowane
              osobno;  odnoszą  się one odpowiednio do standardowego wyjścia i
              standardowego wyjścia błędów.

       -fprint0 plik
              Prawdziwe; podobne do -print0, lecz zapisuje do pliku,  podobnie
              jak -fprint.

       -fprintf plik format
              Prawdziwe;  podobne do -printf, lecz zapisuje do pliku, podobnie
              jak -fprint.

       -ok polecenie ;
              Podobne do -exec, lecz pyta wpierw użytkownika (na  standardowym
              wejściu); jeśli odpowiedź nie rozpoczyna się od `y' lub `Y', nie
              uruchamia polecenia i zwraca fałsz.

       -print Prawdziwe; wypisuje pełną nazwę pliku na standardowe wyjście. Za
              nazwą daje nową linię.

       -print0
              Prawdziwe;  wypisje pełną nazwę pliku na standardowe wyjście. Za
              nazwą daje znak null. Umożliwia to poprawne wyświetlenie plików,
              zawierających   w   nazwach  znaki  nowej  linii  w  programach,
              przetwarzających wyjście finda.

       -printf format
              Prawdziwe; wypisuje format na standardowe wyjście, interpretując
              sekwencje  specjalne  `\'  i  dyrektywy  `%'.  Szerokości  pól i
              precyzje mogą być podawane dokładnie jak  w  printf(3)  z  C.  W
              przeciwieństwie  do  -print,  -printf  nie dodaje nowej linii do
              końca łańcucha. Sekwencje specjalne i dyrektywy to:

              \a     Dzwonek.

              \b     Backspace.

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

              \f     Form feed.

              \n     Nowa linia.

              \r     Powrót karetki.

              \t     Tabulacja pozioma.

              \v     Tabulacja pionowa.

              \\     Literalny lewy ukośnik (`\').

              `\',  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).

              %Ak    Ostatni  czas  dostępu  do  pliku,  w formacie okreslonym
                     przez k, którym może być `@', lub dyrektywa dla funkcji C
                     strftime(3).  Możliwe  wartości  k  są  wymienione niżej;
                     niektóre z nich  mogą  nie  być  dostępne  na  wszystkich
                     systemach z powodu różnic w strftime(3) między systemami.

                      @      Sekundy od 1 stycznia, 1970, 00:00 GMT.

                     Pola czasowe:

                      H      godzina (00..23)

                      I      godzina (01..12)

                      k      godzina ( 0..23)

                      l      godzina ( 1..12)

                      M      minuta (00..59)

                      p      localowe AM lub PM

                      r      czas, 12-godzinny (gg:mm:ss [AP]M)

                      S      sekunda (00..61)

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

                      X      lokalna reprezentacja czasu (G:M:S)

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

                     Pola daty:

                      a      lokalny skrót nazwy tygodnia (Sun..Sat)

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

                      b      lokalna skrócona nazwa miesiąca (Jan..Dec)

                      B      lokalna pełna nazwa miesiąca,  zmiennej  długości
                             (January..December)

                      c      lokalna  data  i  czas  (Sat  Nov 04 12:02:33 EST
                             1989)

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

                      D      data (mm/dd/rr)

                      h      to samo co b

                      j      dzień roku (001..366)

                      m      miesiąc (01..12)

                      U      numer tygodnia w roku, z niedzielą  liczoną  jako
                             pierwszy dzień tygodnia (00..53)

                      w      dzień tygodnia (0..6)

                      W      numer  tygodnia  w roku, licząc z poniedziałkiem,
                             jako pierwszym dniem tygodnia (00..53)

                      x      lokalna reprezentacja daty (mm/dd/rr)

                      y      ostatnie dwie cyfry roku (00..99)

                      Y      rok (1970...)

              %b     Rozmiar pliku w 512-bajtowych  blokach  (zaokrąglanych  w
                     górę).

              %c     Ostatni  czas  zmiany statusu pliku, w formacie zwróconym
                     przez funkcję ctime(3) z C.

              %Ck    Ostatni czas zmiany statusu pliku w  formacie  określonym
                     przez k, w taki sam sposób, jak dla %A.

              %d     Głębokość  pliku  w drzewie katalogowym; 0 oznacza plik w
                     argumencie wiersza poleceń.

              %f     Nazwa pliku z usuniętymi początkowymi  katalogami  (tylko
                     ostatni element nazwy).

              %F     Rodzaj  systemu  plików,  na  którym  znajduje  się plik;
                     wartość ta może być używana do -fstype.

              %g     Nazwa grupy pliku lub numeryczny GID jeśli grupa  nie  ma
                     nazwy.

              %G     Numeryczny GID pliku.

              %h     Początkowe  katalogi  nazwy pliku (wszystko poza ostatnim
                     elementem).

              %H     Argument  wiersza  poleceń,  pod   którym   plik   został
                     znaleziony.

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

              %k     Rozmiar pliku w 1K blokach (zaokrąglane w górę).

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

              %m     Prawa pliku (ósemkowo).

              %n     Liczba twardych dowiązań do pliku.

              %p     Nazwa pliku.

              %P     Nazwa pliku z usuniętą z początku nazwą argumentu wiersza
                     poleceń, dla którego ją znaleziono.

              %s     Rozmiar pliku w bajtach.

              %t     Ostatni czas modyfikacji pliku w formacie zwróconym przez
                     funkcję ctime(3) z C.

              %Tk    Ostatni czas modyfikacji  pliku,  w  formacie  określonym
                     przez k, podobnie jak dla %A.

              %u     Nazwa   użytkownika  pliku,  lub  numeryczny  UID,  jeśli
                     użytkownik nie ma nazwy.

              %U     Numeryczny UID pliku.

              Znak `%', za którym następuje dowolny  inny  znak  jest  usuwany
              (lecz drugi znak jest drukowany).

       -prune Jeśli  nie  podano -depth, prawdziwe; program nie wchodzi w głąb
              bieżącego katalogu.
              Jeśli podano -depth, fałszywe; bez rezultatu.

       -ls    Prawdziwe;  listuje  plik  bieżący  w  formacie  `ls   ils'   na
              standardowe  wyjście.   Liczniki  bloków są 1K blokami, chyba że
              ustawiono zmienną środowiskową  POSIXLY_CORRECT,  kiedy  używane
              będą 512-bajtowe bloki.

   OPERATORY
       Wymienione w malejącym priorytecie:

       ( wyra )
              Wymusza pierwszeństwo.

       ! wyra
              Prawdziwe jeśli wyra jest fałszywe

       -not wyra
              To samo co ! wyra.

       wyra1 wyra2
              And  (jawny);  wyra2  nie  jest  analizowany  jesli wyra1 jest
              fałszywe.

       wyra1 -a wyra2
              To samo, co wyra1 wyra2.

       wyra1 -and wyra2
              To samo, co wyra1 wyra2.

       wyra1 -o wyra2
              Or; wyra2 nie jest analizowane jeśli wyra1 jest prawdziwe.

       wyra1 -or wyra2
              To samo, co wyra1 -o wyra2.

       wyra1 , wyra2
              Lista; zarówno  wyra1  jak  i  wyra2  zawsze  są  analizowane.
              Wartość  wyra1  jest  niszczona;  wartość  listy jest wartością
              wyra2.

ZOBACZ TAKŻE

       locate(1L), locatedb(5L), updatedb(1L),  xargs(1L)  Znajdowanie  plików
       (on-line w Info, lub w postaci wydrukowanej)

                                                                       FIND(1)