find 1






FIND(1) FIND(1)


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 priory
tetó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 wszys
tkie 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
Mierz czasy (dla -amin, -atime, -cmin, -ctime,
-mmin, and -mtime) od dziś, a nie od 24 godzin
temu.

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

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



1





FIND(1) FIND(1)


-help, --help
Drukuj opis użycia find z linii komend i zakończ.

-maxdepth głębokość
Zejdź maksymalnie głębokość (nieujemna liczba
całkowita) poziomów katalogów od argumentów linii
komend. `-maxdepth 0' oznacza, by testy i akcje
aplikować tylko do argumentów linii komend.

-mindepth lgłębokość
Nie stosuje testów lub akcji w poziomach niższych
niż głębokość (nieujemna liczba całkowita). `-min
depth 1' oznacza przetwarzanie wszystkich plików
poza argumentami linii komend.

-mount Nie zgłębiaj katalogów na innych systemach plików.
Jest to alternatywna nazwa dla -xdev, stworzona dla
kompatybilności z innymi wersjami find.

-noleaf
Nie dokonuj optymalizacji przez zakładanie, że kat
alogi zawierają o dwa mniej katalogi niż ich
licznik twardych dowiązań. Opcja ta jest wymagana
podczas przeszukiwania systemów plików, które nie
używają unixowej konwencji wiązania katalogów,
takich jak systemy plików CD-ROM, MS-DOS czy wolu
menów AFS. Każdy katalog w normalnym systemie
Unixowym zawiera przynajmniej dwa twarde
dowiązania: jego nazwę i `.'. Dodatkowo, jego pod
katalogi mogą mieć dowiązania `..'. Gdy find tes
tuje katalog po przestatowaniu o 2 mniej podkata
logó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
Drukuj wersję i zakończ.

-xdev Nie zgłębiaj katalogów 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.





2





FIND(1) FIND(1)


-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 unixa; 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 dyrek
tywą %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.



3





FIND(1) FIND(1)


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

-iregex wzorzec
Podobne do -regex, lecz dopasowanie jest niewra
zliwe 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 zig
norować 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'
wydrukuje wpis dla katalogu 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
wydrukować nazwy innych znalezionych plików, użyj:
find . -path './src/emacs' -prune -o



4





FIND(1) FIND(1)


-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
Wszystkie bity praw są dla pliku ustawione.

-regex wzorzec
Nazwa pliku odpowiada wyrażeniu regularnegmu
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 zajmije n jednostek miejsca. Jednostki to
domyślnie 512-bajtowe bloki. Jeśli doklejona jest
literka `c', jest to n bajtów, jeśli `k', kilo
bajtów, jeśli `w', dwubajtówych słów. Rozmiar nie
wlicza niebezpośrednich bloków, lecz liczy bloki w
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 plik regularny

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.




5





FIND(1) FIND(1)


-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ń symbol
icznych: 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 komenda ;
Wykonaj komendę; prawdziwe jeśli zwrócony został
status 0. Wszelkie następujące argumenty find są
brane za argumenty komendy, 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ę. Komenda jest
wykonywana w katalogu startowym.

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

-fprint plik
Prawdziwe; drukuj pełną nazwę pliku do pliku. Jeśli
plik nie istnieje, zostanie utworzony; jeśli ist
nieje, zostanie obcięty. Nazwy plików ``/dev/std
out'' 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 komenda ;
Podobne do -exec, lecz pyta wpierw użytkownika (na
standardowym wejściu); jeśli odpowiedź nie
rozpoczyna się od `y' lub `Y', nie uruchamiaj
komendy i zwróć fałsz.

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




6





FIND(1) FIND(1)


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

-printf format
Prawdziwe; drukuj 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 Wstrzymaj drukowanie tego formatu i natych
miast wypróżnij wyjście.

\f Form feed.

\n Nowa linia.

\r Powrót karetki.

\t Tabulacja poprzeczna.

\v Tabulacja pionowa.

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

`\', za którym następuje dowolny inny znak, jest
traktowany jak zwykły znak, więc są drukowane oby
dwa.

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




7





FIND(1) FIND(1)


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 localowa reprezentacja czasu (G:M:S)

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

Pola daty:

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

A localowa pełna nazwa tygodnia o zmi
ennej długości (Sunday..Saturday)

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

B localowa pełna nazwa miesiąca o zmi
ennej długości (January..December)

c localowa 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



8





FIND(1) FIND(1)


(00..53)

w dzień tygodnia (0..6)

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

x localowa 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 plik, 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 linii komend.

%f Nazwa pliku z usuniętymi prowadzącymi kata
logami (tylko ostatni element).

%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 Prowadzące katalogi nazwy pliku (wszystko
poza ostatnim elementem).

%H Argument linii komend, 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).



9





FIND(1) FIND(1)


%m Prawa pliku (ósemkowo).

%n Liczba twardych dowiązań do pliku.

%p Nazwa pliku.

%P Nazwa pliku z nazwą argumentu linii komend,
pod którym plik został znaleziony usunięty
(?? `it was found removed' -- przyp. tłum.)

%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 Jesli nie podano -depth, prawdziwe; nie schodź z
(descend the) bieżącego katalogu.
Jeśli podano -depth, fałszywe; bez rezultatu.

-ls Prawdziwe; listuj 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ż )
Wymuś pierwszeństwo.

! wyraż
Prawdziwe jeśli wyraż jest fałszywe

-not wyraż
To samo co ! wyraż.

wyraż1 wyraż2
And (wymuszony); wyraż2 nie jest analizowany jesli
wyraż1 jest fałszywe.

wyraż1 -a wyraż2
To samo co wyraż1 wyraż2.



10





FIND(1) FIND(1)


wyraż1 -and wyraż2
To samo co wyraż1 wyraż2.

wyraż1 -o wyraż2
Or; wyraż2 nie jest analizowane jeśli wyraż1 jest
prawdziwe.

wyraż1 -or wyraż2
To samo co wyraż1 -o wyraż2.

wyraż1 , wyraż2
Lista; zarówno wyraż1 jak i wyraż2 zawsze są anali
zowane. Wartość wyraż1 jest niszczona; wartość
listy jest wartością wyraż2.

ZOBACZ TAKŻE
locate(1), locatedb(5), updatedb(1), xargs(1) Finding
Files (on-line w Info, lub w postaci wydrukowanej)







































11





Wyszukiwarka

Podobne podstrony:
find peerpoint
find locations
find intersection
find contacts
find locations
find fuel
find intersection
find?dress
find?dress
find saversguide
find cities
Inventory Find
find fuel
find fuel
find fuel
find intersection
find fuel

więcej podobnych podstron