find

Content

 

Data

License: GNU GPLv3 +
Version number: 4.6.0 (in DEbian 10)
Developer / owner: Free Software Foundation, Inc.

Short description:

Manual page and help for the find linux command. The find program searches the directory tree starting from the specified files by evaluating the specified expression from left to right. See the OPERATORS section for the precedent rules considered by the program. As soon as it is clear whether a file matches the expression, it starts examining the next file. (So ​​it doesn't necessarily evaluate the whole expression. For example, if there is a false condition to the left of an and expression or a true condition to the left of an or expression, it makes the value of the whole expression clear. In this case, find does not examine the expression further.)

The first argument, which is `- ',` (', `) ',`,', or `! ' begins with the beginning of the expression. Arguments before this are taken as search paths, after them as the rest of the expression. If no path is specified, the search starts from the current directory. And if no expression is specified, `-print 'will be used.

 

 

Man page output

man find
FIND(1)                            General Commands Manual                           FIND(1)

NÉV
       find - fájlokat keres egy könyvtárstruktúrában

ÁTTEKINTÉS
       find [útvonal...] [kifejezés]

LEÍRÁS
       Ez a kézikönyv lap a find GNU változatát dokumentálja.

       A  find  program a megadott fájloktól induló könyvtárfában keres a megadott kifejezés
       balról   jobbra   való   kiértékelésével.   A   program   által    figyelembe    vett
       precedenicaszabályokat  lásd az OPERÁTOROK fejezetetben. Mihelyt egyértelmű, hogy egy
       fájl megfelel-e a kifejezésnek, a következő fájl vizsgálatába kezd.   (Nem  feltétlen
       értékeli  ki  tehát  a teljes kifejezést. Pl. ha egy and kifejezés bal oldalán hamis,
       vagy egy or kifejezés bal oldalán igaz feltétel van, az egyértelművé teszi  az  egész
       kifejezés értékét. Ilyenkor a find nem vizsgálja tovább a kifejezést.)

       Az  első  argumentum,  amely  `-',  `(', `)', `,', vagy `!' jellel kezdődik jelenti a
       kifejezés elejét. Az ez előtti argumentumokat keresési útvonalaknak veszi a  program,
       az  ez utániakat a kifejezés további részeként. Ha nincs útvonal megadva, az aktuális
       könyvtárból indul a keresés. Ha  pedig  nincs  kifejezés  megadva,  a  `-print'  lesz
       használva.

       A  find  kilépési állapota 0 ha minden fájlt sikeresen feldolgozott, nagyobb, mint 0,
       ha valami hiba történt.

KIFEJEZÉSEK
       A kifejezés opciókból, tesztekből és akciókból áll, melyeket  operátorok  választanak
       el  egymástól.  Az  opciók  a  teljes  műveletet  befolyásolják,  nemcsak  egy fájlra
       vonatkoznak, és mindig igaz a visszatérési értékük. A tesztek igaz és  hamis  értéket
       egyaránt  visszaadhatnak.  Az  akcióknak oldalhatásuk (side effect) van, és igaz vagy
       hamis értékkel is visszatérhetnek.

       Az operátor elhagyható, ilyenkor az  alapértelmezett  -and  kerül  behelyettesítésre.
       Amennyiben  a  kifejezés  a  -prune  -on  kívül  nem  tartalmaz akciót, a -print lesz
       végrehajtva minden fájlra, melyre a kifejezés igaz.

OPCIÓK
       Minden opció mindig igaz értéket ad vissza. Mindig hatnak, nemcsak  akkor,  amikor  a
       feldolgozás  eljut  a helyükre. Ezért az áttekinthetőség kedvéért a kifejezés elejére
       célszerű tenni őket.

       -daystart
              Az időpontokat (-amin, -atime, -cmin, -ctime, -mmin, és -mtime  esete)  a  mai
              nap kezdetétől számítja, nem 24 órával ezelőttől.

       -depth A könyvtárak feldolgozása előtt tartalmukat dolgozza fel.

       -follow
              Nem  a  szimbolikus  kötésekre  hivatkozik,  hanem az általuk mutatott fájlra.
              Bekapcsolja -noleaf-ot is.

       -help, --help
              Egy összegzést ír ki a find használatáról, majd kilép.

       -maxdepth levels
              Legfeljebb  levels  (ez  egy  nemnegatív  szám)   mélységben   megy   bele   a
              könyvtárstruktúrába.  `-maxdepth  0'  azt  jelenti,  hogy csak a parancssorban
              argumentumként megadott fájlokra kell a teszteket és az akciókat végrehajtani.

       -mindepth levels
              A levels-ben adott nemnegatív egésznél kisebb mélységben nem alkalmaz egyetlen
              tesztet  vagy  akciót  sem.  `-mindepth  1'  azt  jelenti,  hogy a parancssori
              argumentumokat nem, csak az alattuk levő könyvtárakat dolgozza fel.

       -mount Nem megy bele olyan alkönyvtárba, amely más fájlrendszeren van. Ugyanaz,  mint
              -xdev. (Csak kompatibilitási okokból került implementálásra.)

       -noleaf
              Nem   használja   azt   a  feltevést,  hogy  a  könyvtárak  kettővel  kevesebb
              alkönyvtárat tartalmaznak, mint a kemény kötéseik  száma.  Erre  olyankor  van
              szükség,  amikor a keresés olyan fájlrendszeren történik, amelyik nem követi a
              Unix könyvtárkonvencióit, mint pl. az MS-DOS vagy a CD-ROM-ok.

       Unix alatt ugyanis minden könyvtárnak van két kemény kötése: a saját neve  és  a  `.'
       bejegyzés.  Továbbá,  minden  alkönyvtárának  van  egy  `..'   bejegyzése,  amely  rá
       vonatkozik. Ezért tehát a  Unix-ban  egy  könyvtár  kemény  kötéseinek  száma  mindig
       kettővel  több  alkönyvtárainak  számánál.  Ennek  felhasználásával  a  keresés  Unix
       rendszereken jelentősen gyorsítható, mert a kemény kötések számánál kettővel kevesebb
       alkönyvtár  megvizsgálása  után nem kell továbbiakat keresni, azaz nem kell egy csomó
       másik fájlt vizsgálni, hisz azok biztosan normális, azaz "levél" (leaf) fájlok. Ez  a
       feltételezés  természetesen  nem  igaz  más  rendszerekben,  így ott find kihagyhatna
       alkönyvtárakat.

       -version, --version
              Kiírja a verziószámot és kilép.

       -xdev  Nem megy bele olyan alkönyvtárba, amely más fájlrendszeren van.

TESZTEK
       Numerikus argumentumok az alábbi módon adhatók meg:

       +n     nagyobb mint n,

       -n     kisebb mint n,

       n      pontosan n.

       -amin n
              A fájl utoljára n perce lett használva.

       -anewer file
              A fájl utolsó használata frissebb, mint a file módosítási dátuma.  -anewer  -t
              csak   akkor   befolyásolja   a   -follow,  ha  a  -follow  előbb  szerepel  a
              parancssorban, mint -anewer.

       -atime n
              A fájl utoljára n*24 órája lett használva.

       -cmin n
              A fájl státusza n perce lett utoljára módosítva.

       -cnewer file
              A fájl utolsó státuszmódosítása  frissebb,  mint  a  file  módosítási  dátuma.
              -cnewer  -t  csak  akkor befolyásolja a -follow, ha a -follow előbb szerepel a
              parancssorban, mint -cnewer.

       -ctime n
              A fájl státusza utoljára n*24 órája lett módosítva.

       -empty A fájl üres. (Szabályos fájlra és könyvtárra is vonatkozik.)

       -false Mindig hamis

       -fstype type
              A fájl type típusú fájlrendszeren van. Az érvényes fájlrendszer-típusok a Unix
              változataitól   függenek.  Egy  nem  teljes  lista  a  Unix  rendszerek  alatt
              előforduló fájlrendszerekről: ufs, 4.2, 4.3, nfs, tmp, mfs, S51K, S52K. (Linux
              alatt  a  legjellemzőbbek:  ext2, msdos, minix, iso9660, vfat.) A -printf a %F
              direktívával a fájlrendszer típusának megállapítására használható.

       -gid n A fájl numerikus csoportazonosítója (group ID) n.

       -group gname
              A fájl a gname csoporthoz tartozik. (Numerikus érték is megengedett.)

       -ilname pattern
              Ugyanaz, mint -lname, csak nem tesz különbséget a kis- és nagybetűk között.

       -iname pattern
              Ugyanaz, mint -name, csak nem tesz különbséget a  kis-  és  nagybetűk  között.
              Páldául  a  `fo*'  és  `F??'  minták illeszkednek a `Foo', `FOO', `foo', `fOo'
              fájlnevekhez is.

       -inum n
              A fájl inode száma n.

       -ipath pattern
              Ugyanaz, mint -path, csak nem tesz különbséget a kis- és nagybetűk között.

       -iregex pattern
              Ugyanaz, mint -regex, csak nem tesz különbséget a kis- és nagybetűk között.

       -links n
              A fájlnak n kötése van.

       -lname pattern
              A  fájl  egy  szimbolikus  kötés,  melynek  tartalma  illeszkedik  a   pattern
              burokmintára. A metakarakterek nem kezelik a `/'-t és a `.'-t speciálisan.

       -mmin n
              A fájl adatai utoljára n perce lettek módosítva.

       -mtime n
              A fájl adatai utoljára n*24 órája lettek módosítva.

       -name pattern
              A  fájlnév  alapja  (azaz  a  fájl  elérési útja a bevezető könyvtárak nélkül)
              illeszkedik a pattern burokmintához. A metakarakterek (`*', `?' és  `[]')  nem
              illeszkednek  a  fájl  alapneve  elején  található `.'-hoz. Egy könyvtár és az
              alatta levő fájlok figyelmen kívül hagyására a  -prune  használható.  (Lásd  a
              -path leírásánál levő példát.)

       -newer file
              A   fájl   frissebben  lett  módosítva,  mint  file.   -newer  -t  csak  akkor
              befolyásolja a -follow, ha a -follow  előbb  szerepel  a  parancssorban,  mint
              -newer.

       -nouser
              Nincs  a  fájl  numerikus  felhasználói  azonosítójának  (user  ID)  megfelelő
              felhasználó.

       -nogroup
              Nincs a fájl numerikus csoportazonosítójának (group ID) megfelelő csoport.

       -path pattern
              A fájlnév illeszkedik a pattern burokmintához. A  metakarakterek  nem  kezelik
              `/'-t és `.'-t speciálisan. Például:
                        find . -path './sr*sc'
              kinyomtat egy bejegyzést a './src/misc' könyvtárról, ha az létezik. Egy teljes
              könyvtárfa figyelmen  kívül  hagyásához  a  -prune  használható  a  fa  minden
              fájljának  ellenőrzése  helyett.  Például  a  többi  fájl  nevének  nyomtatása
              megvalósítható a következő módon:
                        find . -path './src/emacs' -prune -o -print

       -perm mode
              A fájl engedélybitjei pontosan a mode -nak megfelelőek. A mode megadása  lehet
              oktális vagy szimbolikus. Szimbolikus esetben a 0 mód a kiindulás.

       -perm -mode
              A mode minden engedélybitje be van állítva a fájlra is.

       -perm +mode
              A mode engedélybitjeinek valamelyike be van állítva a fájlra is.

       -regex pattern
              A  fájlnév  illeszkedik  a  pattern  szabályos  kifejezéshez. Az illeszkedés a
              teljes elérési útra  vonatkozik,  nem  a  keresésre.  Például  egy  `./fubar3'
              fájlhoz  való  illeszkedésre  használható  a  `.*bar.' vagy `.*b.*3' szabályos
              kifejezés, de a `b.*r3' nem.

       -size n[bckw]
              A fájl mérete n egységnyi. Az egység  az  512-bájtos  blokk  alapértelmezésben
              vagy  `b'  végződés  esetén,  bájt, ha a végződés `c', kilobájt, ha a végződés
              `k', 2-bájtos szó, ha a végződés `w'.

       -true  Mindig igaz.

       -type c
              A fájl c típusú, ahol a lehetséges értékek:

              b      blokkos (pufferelt) speciális eszközfájl

              c      karakteres (nem pufferelt) speciális eszközfájl

              d      könyvtár

              p      csőhálózat (named pipe, FIFO)

              f      szabályos fájl

              l      szimbolikus kötés

              s      socket

       -uid n A fájl numerikus felhasználói azonosítója (user ID) n.

       -used n
              A fájl utoljára n nappal a státusza megváltoztatása után volt használatban.

       -user uname
              A fájl a uname felhasználó tulajdonában van. (Numerikus érték is megengedett.)

       -xtype c
              Ugyanaz, mint -type, hacsak nem a fájl szimbolikus kötés. Ebbean  az  esetben:
              ha  -follow  nem  adott,  akkor  igaz az értéke amennyiben a fájl egy c típusú
              fájlra mutató link; amennyiben -follow is adott, igaz, ha c  egyenlő  `l'-lel.
              Más  szavakkal:  szimbolikus  kötés  esetén  -xtype  annak a fájlnak a típusát
              vizsgálja, amit -type nem vizsgál.

AKCIÓK
       -exec command ;
              Végrehajtja a command parancsot. Értéke igaz,  ha  a  parancs  0  státuszt  ad
              vissza. A következő `;'-ig a find minden argumentumát a parancs argumentumának
              veszi. A `{}'  string  az  aktuálisan  feldolgozás  alatt  álló  fájl  nevével
              helyettesítődik.  Ezen  szerkezeteket  esetlegesen  meg  kell  védeni  (a  `\'
              használatával) attól, hogy a burok kifejtese őket. A  parancs  végrehajtása  a
              kiindulási könyvtárból történik.

       -fls file
              Igaz; ugyanaz, mint -ls, csak a file-ba ír. (Az -fprint -hez hasonlóan.)

       -fprint file
              Igaz.  A  teljes fájlnevet a file fájlba írja. Amennyiben a file nem létezik a
              find  futtatásakor,  a  find  létrehozza,  ha  pedig  létezik,  csonkolja.   A
              ``/dev/stdout''   és   ``/dev/stderr''   fájlenevket   speciálisan  kezeli:  a
              szabványos kimenetre és szabványos bemenetre vonatkoznak.

       -fprint0 file
              Igaz; ugyanaz,  mint  -print0,  csak  azfile  fájlba  ír.   (Az  -fprint  -hez
              hasonlóan.)

       -fprintf file format
              Igaz;  ugyanaz,  mint  -printf,  csak  azfile  fájlba  ír.   (Az  -fprint -hez
              hasonlóan.)

       -ok command ;
              Ugyanaz,  mint  -exec,  de  először  megkérdezi  a  felhasználót  a   standard
              bemeneten. Amennyiben a válasz nem `y'-nal vagy `Y'-nal kezdődik, nem futtatja
              a parancsot, és hamis értékkel tér vissza.

       -print Igaz; a fájl teljes nevét, majd egy újsor-jelet a szabványos kimenetre írja.

       -print0
              Igaz; a fájl teljes nevét, majd egy null-karaktert a standard kimenetre  írja.
              Ez  megengedi,  hogy  újsor-jelet tartalmazó fájlnevek esetén a find kimenetét
              feldolgozó programok jól működjenek.

       -printf format
              Igaz; a format által megadott formátumban  nyomtat  a  a  standard  kimenetre.
              Értelmezi  a  `\'  és  `%'  direktívákat.  Mezőszélesség és pontosság a C-beli
              `printf'-fel megegyező módon adható meg. A -print-től eltérően -printf nem  ír
              ki automatikusan újsorjelet a kimenetre. A direktívák a következők lehetnek:

              \a     Figyelmeztető csengő (alarm bell).

              \b     Fordított törtvonal (backspace).

              \c     Ezen  formátumból  való  nyomtatást  megállítja  és  kiírja  (flush)  a
                     kimenetet.

              \f     Soremelés (form feed).

              \n     Újsor (newline).

              \r     Kocsi vissza (carriage return).

              \t     Vízszintes tabulátor (horizontal tab).

              \v     Függőleges tabulátor (vertical tab).

              \\     Betű szerinti fordított törtvonal (literal backslash, `\').

              Egy `\',  majed  egy  másik  karakter  rendes  karakterként  viselkedik,  azaz
              mindegyik kinyomtatásra kerül.

              %%     Betű szerinti százalékjel.

              %a     A fálj utolsó elérési ideje a C `ctime' függvényének formátumában.

              %Ak    A  fálj  utolsó  elérési ideje a k által megadott formátumban. Ez lehet
                     `@', vagy egy direktíva a  C  `strftime'  függvényének  megfelelően.  k
                     lehetséges értékeit a következőkben megadjuk. Néhány közülük nem minden
                     rendszeren elérhető a `strftime' függvények rendszerfüggősége miatt.

                     @      1970. január 1. 00:00 GMT óta eltelt másodpercek.

                     Időmezők:

                     H      óra (00..23)

                     I      óra (01..12)

                     k      óra ( 0..23)

                     l      óra ( 1..12)

                     M      perc (00..59)

                     p      a `locale'-nak megfelelő AM vagy PM

                     r      idő 12 órás formátumban (hh:mm:ss [AP]M)

                     S      másodperc (00..61)

                     T      idő 24 órás formátumban (hh:mm:ss)

                     X      a `locale'-nak megfelelő időjelzés (H:M:S)

                     Z      időzóna (pl. EDT) vagy semmi, ha az időzóna nem meghatározható

                     Dátum mezők:

                     a      a `locale'-nak megfelelő rövidített napnév (pl. Sun..Sat)

                     A      a `locale'-nak megfelelő teljes napnév (pl. Sunday..Saturday)

                     b      a `locale'-nak megfelelő rövidített hónapnév (pl. Jan..Dec)

                     B      a `locale'-nak megfelelő teljes hónapnév (pl. January..December)

                     c      a `locale'-nak megfelelő dátum és idő (pl. Sat Nov  04  12:02:33
                            EST 1989)

                     d      a hónap napja (01..31)

                     D      dátum (mm/dd/yy)

                     h      ugyanaz, mint b

                     j      az év napja (001..366)

                     m      hónap (01..12)

                     U      az év hányadik hetéről van szó, ha vasárnappal kezdjük a heteket
                            (00..53)

                     w      a hét hányadik napja (0..6)

                     W      az év hányadik hetéről van szó, ha hétfővel  kezdjük  a  heteket
                            (00..53)

                     x      a `locale'-nak megfelelő dátum (pl. mm/dd/yy)

                     y      az év utolsó két jegye (00..99)

                     Y      év (1970...)

              %b     A fájlméret 512 bájtos blokkokban (felkerekítve).

              %c     A   fájl   státuszának   utolsó   megváltoztatási  ideje  a  C  `ctime'
                     függvényének formátumában.

              %Ck    A fájl státuszának utolsó megváltoztatási  ideje  a  k  formátum  által
                     megadott módon (%A-hoz hasonlóan).

              %d     A  fájl  mélysége  a  könyvtárfában.  A  0  azt  jelenti,  hogy  a fájl
                     parancssori argumentum volt.

              %f     A fájl neve a bevezető könyvtárnevek nélkül.

              %F     A fájlrendszer neve. Ez az érték használható az -fstype-nál.

              %g     A fájl csoportneve vagy a numerikus csoportazonosító, ha nincs  neve  a
                     csoportnak.

              %G     A fájl numerikus csoportazonosítója.

              %h     A teljes fájnév bevezető könyvtárnevei.

              %H     Azon parancssori argumentumok, melyek alatt nem talált fájlt a find.

              %i     A fájl inode száma decimálisan.

              %k     A fájl mérete 1K blokkokban (felkerekítve).

              %l     A szimbolikus kötés célja. (Üres, ha a fájl nem szimbolikus kötés.)

              %m     A fájl engedélybitjei oktálisan.

              %n     A fájl kemény kötéseinek száma.

              %p     A fájl (teljes) neve.

              %P     A  fájl neve azon parancssori argumentum nélkül, amely alatt megtalálta
                     a find.

              %s     A fájl mérete bájtokban.

              %t     A fájl utolsó módosítási ideje a C `ctime' függvényének formátumában.

              %Tk    A fájl utolsó módosítási ideje a k által megadott formában.  (Lásd  %A-
                     nál.)

              %u     A fájl tulajdonosának neve, vagy numerikus felhasználói azonosítója, ha
                     nincs neve a felhasználónak.

              %U     A fájl tulajdonosának numerikus felhasználói azonosítója.

              A `%' jel után álló bármely más  karakter  esetén  csak  a  megadott  karakter
              íródik ki.

       -prune Ha nincs -depth megadva, akkor igaz. Nem megy bele az aktuális könyvtárba.
              Ha -depth adott, akkor hamis és nincs hatása.

       -ls    Igaz.  listázza  az aktuális fájlt `ls -dils' formában a standard kimenetre. A
              blokkméret 1K, hacsak nem  a  POSIXLY_CORRECT  környezeti  változónak  értéket
              adtunk. Ekkor 512 bájtos blokkmérettel számol.

OPERÁTOROK
       Az operátorokat csökkenő precedenciasorrendben listázzuk:

       ( expr )
              Precedencia változtatás.

       ! expr Igaz, ha az expr kifejezés hamis.

       -not expr
              Ugyanaz, mint ! expr.

       expr1 expr2
              Logikai és. Nem értékeli ki expr2-t, ha expr1 hamis.

       expr1 -a expr2
              Ugyanaz, mint expr1 expr2.

       expr1 -and expr2
              Ugyanaz, mint expr1 expr2.

       expr1 -o expr2
              Logikai vagy. expr2-t nem értékeli ki, ha expr1 igaz.

       expr1 -or expr2
              Ugyanaz, mint expr1 -o expr2.

       expr1 , expr2
              Listáz. expr1 és expr2 is mindig kiértékelésre kerül. expr1 értéke nem számít,
              a lista expr2 értékét adja vissza.

LÁSD MÉG
       locate(1),  locatedb(5),  updatedb(1),  xargs(1)  Finding  Files  (Info  fájl,   vagy
       nyomtatott változat)

MAGYAR FORDÍTÁS
       Horváth András <horvatha@rs1.szif.hu>

                                                                                     FIND(1)

 

 

Help output

find --help
Usage: find [-H] [-L] [-P] [-Olevel] [-D debugopts] [path...] [expression]

az alapértelmezett útvonal az aktuális könyvtár; az alapértelmezett kifejezés -print, kifejezés lehet:
operátorok, kapcsolók, tesztek és tevékenységek:
operátorok (csökkenő precedencia; alapértelmezett -and, ha nincs más megadva):
      ( KIF ) ! KIF -not KIF KIF1 -a KIF2 KIF1 -and KIF2
      KIF1 -o KIF2 KIF1 -or KIF2 KIF1 , KIF2
helyzetérzékeny kapcsolók: (mindig igaz) -daystart -follow -regextype

normál kapcsolók (mindig igaz, más kifejezések előtt adandó meg):
      -depth --help -maxdepth SZINTEK -mindepth SZINTEK -mount -noleaf
      --version -xdev -ignore_readdir_race -noignore_readdir_race
Tesztek (Az N +N, -N vagy N lehet): -amin N -anewer FILE -atime N -cmin N
-cnewer FÁJL -ctime N -empty -false -fstype TÍPUS -gid N -group NÉV
      -ilname MINTA -iname MINTA -inum N -ipath MINTA -iregex MINTA
      -links N -lname MINTA -mmin N -mtime N -name MINTA -newer FÁJL
      -nouser -nogroup -path PATTERN -perm [-/]MODE -regex PATTERN
      -readable -writable -executable
      -wholename PATTERN -size N[bcwkMG] -true -type [bcdpflsD] -uid N
      -used N -user NAME -xtype [bcdpfls]      -context KONTEXTUS

actions: -delete -print0 -printf FORMAT -fprintf FILE FORMAT -print 
      -fprint0 FILE -fprint FILE -ls -fls FILE -prune -quit
      -exec COMMAND ; -exec COMMAND {} + -ok COMMAND ;
      -execdir COMMAND ; -execdir COMMAND {} + -okdir COMMAND ;

Valid arguments for -D:
exec, opt, rates, search, stat, time, tree, all, help
Use '-D help' for a description of the options, or see find(1)

Please see also the documentation at http://www.gnu.org/software/findutils/.
You can report (and track progress on fixing) bugs in the "find"
program via the GNU findutils bug-reporting page at
https://savannah.gnu.org/bugs/?group=findutils or, if
you have no web access, by sending email to <bug-findutils@gnu.org>.

 

Related Content

  •