find
szuka plików w hierarchii katalogowej
1. find.1.man
Manpage of FIND
FIND
Section: Misc. Reference Manual Pages (1L)Index Return to Main Contents
NAZWA
find - szuka plików w hierarchii katalogowejSKŁ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 głębokość
- Schodzi maksymalnie głębokość (nieujemna liczba całkowita) poziomów katalogów od argumentów wiersza poleceń. `-maxdepth 0' oznacza, by testy i akcje stosować tylko do argumentów wiersza poleceń.
- -mindepth lgłębokość
- Nie stosuje testów lub akcji w poziomach niższych niż głębokość (nieujemna liczba całkowita). `-mindepth 1' oznacza przetwarzanie wszystkich plików poza argumentami wiersza poleceń.
- -mount
- Nie zagłębia się w katalogi na innych systemach plików. Jest to alternatywna nazwa dla -xdev, stworzona dla zgodności z innymi wersjami find.
- -noleaf
- Zakazuje optymalizacji wykonywanej przez zakładanie, że katalogi zawierają o dwa mniej podkatalogi niż ich licznik twardych dowiązań. Opcja ta jest wymagana podczas przeszukiwania systemów plików, które nie używają uniksowej konwencji wiązania katalogów, takich jak systemy plików CD-ROM, MS-DOS czy wolumenów AFS. Każdy katalog w normalnym systemie uniksowym zawiera przynajmniej dwa twarde dowiązania: jego nazwę i `.'. Dodatkowo, jego podkatalogi mogą mieć dowiązania `..'. Gdy find testuje katalog po zbadaniu funkcją stat o 2 mniej podkatalogów niż licznik dowiązań, wie, że reszta wpisów jest niekatalogowa. Jeśli testowane mają być tylko nazwy plików, to nie ma potrzeby ich sprawdzać; daje to znaczące przyspieszenie.
- -version, --version
- Wypisuje wersję i kończy pracę.
- -xdev
- Nie zagłębia się w katalogi na innych systemach plików.
TESTY
Wartości numeryczne mogą być podawane jako- +n
- dla większych niż n,
- -n
- dla mniejszych niż n,
- n
- dla równych n.
- -amin n
- Dostęp do pliku nastąpił ostatnio n minut temu.
- -anewer plik
- Do pliku ostatnio dostano się wcześniej niż plik został zmodyfikowany. -anewer podlega -follow tylko jeśli -follow pojawia się w linii komend przed -anewer.
- -atime n
- Do pliku dostano się po raz ostatni n*24 godzin temu.
- -cmin n
- Status pliku został zmieniony n minut temu.
- -cnewer plik
- Status pliku był ostatnio zmieniony wcześniej niż zmodyfikowano plik. -cnewer podlega -follow tylko jeśli -follow pojawia się w linii komend przed -cnewer.
- -ctime n
- Status pliku zmienił się ostatnio n*24 godzin temu.
- -empty
- Plik jest pusty i jest albo plikiem regularnym, albo katalogiem.
- -false
- Zawsze fałszywe.
- -fstype typ
- Plik jest na systemie plików o typie typ. Prawidłowe typy systemów plików różnią się na różnych wersjach Uniksa; ich niekompletna lista, która jest przyjmowana w części systemów to: ufs, 4.2, 4.3, nfs, tmp, mfs, S51K, S52K. Aby zobaczyć typy twoich systemów plików, użyj -printf z dyrektywą %F.
- -gid n
- Numeryczny GID pliku to n.
- -group nazwag
- Plik należy do grupy nazwag (numeryczny GID jest dopuszczalny).
- -ilname pattern
- Podobne do -lname, lecz dopasowania są niewrażliwe na rozmiar liter.
- -iname pattern
- Podobne do -name, lecz dopasowanie jest niewrażliwe na rozmiar liter. Na przykład wzorce `fo*' i `F??' dopasują się do nazw `Foo', `FOO', `foo', `fOo', itd.
- -inum n
- Plik ma numer iwęzła n.
- -ipath wzorzec
- Podobne do -path, lecz dopasowanie jest niewrażliwe na rozmiar liter.
- -iregex wzorzec
- Podobne do -regex, lecz dopasowanie jest niewrazliwe na rozmiar liter.
- -links n
- Plik ma n dowiązań.
- -lname wzorzec
- Plik jest dowiązaniem symbolicznym, którego zawartość odpowiada wzorcowi powłoki wzorzec. Metaznaki nie traktują specjalnie `/' i `.'.
- -mmin n
- Dane pliku były ostatnio modyfikowane n minut temu.
- -mtime n
- Dane pliku były ostatnio modyfikowane n*24 godzin temu.
- -name wzorzec
- Podstawa nazwy pliku (z usuniętą ścieżką i poprzedzającymi katalogami) odpowiada wzorcowi powłoki wzorzec. Metaznaki (`*', `?', `[]') nie odpowiadają `.' na początku nazwy pliku. Aby zignorować katalogi i pliki im podległe, użyj -prune; zobacz przykład w opisie -path.
- -newer plik
- Plik został zmodyfikowany wcześniej niż plik. -newer podlega -follow tylko jeśli -follow znajduje się w linii komend przed -newer.
- -nouser
- Do numerycznego UID pliku nie pasuje żaden użytkownik.
- -nogroup
- Do numerycznego GID pliku nie pasuje żadna grupa.
- -path wzorzec
-
Nazwa pliku odpowiada wzorcowi powłoki wzorzec. Metaznaki nie traktują
specjalnie `/' lub `.'; tak więc na przykład,
find . -path './sr*sc'
wypisze wpis katalogowy o nazwie './src/misc' (jeśli taki istnieje). Aby zignorować całe drzewo katalogowe, użyj -prune. Na przykład, aby pominąć katalog `src/emacs' i wszystkie jego pliki oraz wypisać nazwy innych znalezionych plików, użyj:
find . -path './src/emacs' -prune -o -print
- -perm prawa
- Bity praw pliku są dokładnie równe prawom (ósemkowym lub symbolicznym). Prawa symboliczne używają 0 jako punktu wyjścia.
- -perm -prawa
- wszystkie bity prawa są ustawione dla pliku.
- -perm +prawa
- Któryś z bitów praw jest ustawiony dla pliku.
- -regex wzorzec
- Nazwa pliku odpowiada wyrażeniu regularnemu wzorzec. Dopasowanie stosuje się do całej ścieżki, nie dla przeszukiwanej. Na przykład, aby dopasować plik o nazwie `./fubar3', możesz użyć wyrażenia regularnego `.*bar' lub `.*b.*3'.
- -size n[bckw]
- Plik zajmuje n jednostek miejsca. Jednostki to domyślnie 512-bajtowe bloki. Jeśli doklejona jest litera `c', jest to n bajtów, jeśli `k', kilobajtów, jeśli `w', dwubajtówych słów. Rozmiar nie wlicza niebezpośrednich bloków, lecz liczy bloki w plikach `sparse', które w rzeczywistości nie są zajęte.
- -true
- Zawsze prawda.
- -type c
-
Plik jest typu c:
-
- b
- blokowy (buforowany) plik specjalny
- c
- znakowy (niebuforowany) plik specjalny
- d
- katalog
- p
- łącze nazwane (FIFO)
- f
- zwykły plik
- l
- dowiązanie symboliczne
- s
- gniazdo
-
- -uid n
- Numeryczny UID pliku to n.
- -used n
- Do pliku ostatnio dostano się n dni po zmianie jego statusu.
- -user unazwa
- Właścicielem pliku jest użytkownik unazwa (numeryczny UID jest tu dozwolony).
- -xtype c
- Jest to to samo co -type, chyba że plik jest dowiązaniem symbolicznym. Dla dowiązań symbolicznych: jeśli nie podano -follow, jest prawdziwe gdy plik jest dowiązaniem do pliku typu c; jeśli podano -follow, jest prawdziwe, jeśli c to `l'. Innymi słowy, dla dowiązań symbolicznych -xtype sprawdza typ pliku, którego nie sprawdza -type.
AKCJE
- -exec polecenie ;
- Wykonuje polecenie; prawdziwe jeśli zwrócony został status 0. Wszelkie następne argumenty find są brane za argumenty polecenia, aż nie zostanie napotkany argument, składający się z `;'. Łańcuch `{}' jest podmieniany na obecnie przetwarzaną nazwę pliku. Obydwie te konstrukcje być może będą wymagały wycytowania (znakiem `\') aby uchronić je przed rozwinięciem przez powłokę. Polecenie jest wykonywane w katalogu startowym.
- -fls plik
- Prawdziwe; podobne do -ls, lecz zapisuje do pliku jak -fprint.
- -fprint plik
- Prawdziwe; wypisuje pełną nazwę pliku do pliku. Jeśli plik nie istnieje, zostanie utworzony; jeśli istnieje, zostanie obcięty. Nazwy plików ``/dev/stdout'' i ``/dev/stderr'' są traktowane osobno; odnoszą się one odpowiednio do standardowego wyjścia i standardowego wyjścia błędów.
- -fprint0 plik
- Prawdziwe; podobne do -print0, lecz zapisuje do pliku, podobnie jak -fprint.
- -fprintf plik format
- Prawdziwe; podobne do -printf, lecz zapisuje do pliku, podobnie jak -fprint.
- -ok polecenie ;
- Podobne do -exec, lecz pyta wpierw użytkownika (na standardowym wejściu); jeśli odpowiedź nie rozpoczyna się od `y' lub `Y', nie uruchamia polecenia i zwraca fałsz.
- Prawdziwe; wypisuje pełną nazwę pliku na standardowe wyjście. Za nazwą daje nową linię.
- -print0
- Prawdziwe; wypisje pełną nazwę pliku na standardowe wyjście. Za nazwą daje znak null. Umożliwia to poprawne wyświetlenie plików, zawierających w nazwach znaki nowej linii w programach, przetwarzających wyjście finda.
- -printf format
-
Prawdziwe; wypisuje format na standardowe wyjście, interpretując
sekwencje specjalne `\' i dyrektywy `%'. Szerokości pól i precyzje mogą być
podawane dokładnie jak w printf(3) z C. W przeciwieństwie do -print,
-printf nie dodaje nowej linii do końca łańcucha. Sekwencje specjalne i
dyrektywy to:
-
- \a
- Dzwonek.
- \b
- Backspace.
- \c
- Wstrzymuje wtypisywanie tego formatu i natychmiast wymiata wyjście.
- \f
- Form feed.
- 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ż.
- wyraż1 wyraż2
- And (jawny); wyraż2 nie jest analizowany jesli wyraż1 jest fałszywe.
- wyraż1 -a wyraż2
- To samo, co wyraż1 wyraż2.
- wyraż1 -and wyraż2
- To samo, co wyraż1 wyraż2.
- wyraż1 -o wyraż2
- Or; wyraż2 nie jest analizowane jeśli wyraż1 jest prawdziwe.
- wyraż1 -or wyraż2
- To samo, co wyraż1 -o wyraż2.
- wyraż1 , wyraż2
- Lista; zarówno wyraż1 jak i wyraż2 zawsze są analizowane. Wartość wyraż1 jest niszczona; wartość listy jest wartością wyraż2.
ZOBACZ TAKŻE
locate(1L), locatedb(5L), updatedb(1L), xargs(1L) Znajdowanie plików (on-line w Info, lub w postaci wydrukowanej)
Index
This document was created by man2html using the manual pages.
Time: 00:24:51 GMT, November 20, 2008
2. find.9.man
Manpage of find
find
Section: [incr\ Tcl] (n)Updated: 3.0
Index Return to Main Contents
NAME
find - search for classes and objectsSYNOPSIS
itcl::find option ?arg arg ...?DESCRIPTION
The find command is used to find classes and objects that are available in the current interpreter. Classes and objects are reported first in the active namespace, then in all other namespaces in the interpreter.
The option argument determines what action is carried out by the command. The legal options (which may be abbreviated) are:
- find classes ?pattern?
-
Returns a list of [incr Tcl] classes. Classes in the current
namespace are listed first, followed by classes in all other
namespaces in the interpreter. If the optional pattern
is specified, then the reported names are compared using the rules
of the "string match" command, and only matching names are
reported.
If a class resides in the current namespace context, this command reports its simple name--without any qualifiers. However, if the pattern contains :: qualifiers, or if the class resides in another context, this command reports its fully-qualified name. Therefore, you can use the following command to obtain a list where all names are fully-qualified:
-
itcl::find classes ::*
-
- find objects ?pattern? ?-class className? ?-isa className?
-
Returns a list of [incr Tcl] objects. Objects in the current
namespace are listed first, followed by objects in all other
namespaces in the interpreter. If the optional pattern is
specified, then the reported names are compared using the rules
of the "string match" command, and only matching names are
reported.
If the optional "-class" parameter is specified, this list is
restricted to objects whose most-specific class is className.
If the optional "-isa" parameter is specified, this list is
further restricted to objects having the given className
anywhere in their heritage.
If an object resides in the current namespace context, this command reports its simple name--without any qualifiers. However, if the pattern contains :: qualifiers, or if the object resides in another context, this command reports its fully-qualified name. Therefore, you can use the following command to obtain a list where all names are fully-qualified:
-
itcl::find objects ::*
-
KEYWORDS
class, object, search, import
Index
This document was created by man2html using the manual pages.
Time: 00:24:52 GMT, November 20, 2008





