Notkun Linux og Unix stjórn: finna

Linux og Unix skipunin finnur framkvæmir leit að skrám í möppuherferðarfræði.

Setningafræði til að finna stjórn:

finna [slóð ...] [tjáning]

Lýsing

Þessi handbók síðu lýsir GNU útgáfunni af finna . Skipunin leitar að skráartréinu sem er rætur á hverju tilteknu skráarnafni með því að meta tiltekna tjáninguna frá vinstri til hægri, í samræmi við reglurnar um forgang (sjá kafla um rekstraraðila hér að neðan) þar til niðurstaðan er þekkt. Með öðrum orðum er vinstri hliðin ósatt og aðgerð, sem er sannur fyrir eða hvenær sem er, færist á næsta skráarnet.

Fyrsta rökin sem hefst með:

er talið vera upphaf tjáningarinnar; allir rök áður en það er leið til að leita, og allir rök eftir það er restin af tjáningu. Ef engar slóðir eru gefnar er núverandi skrá notuð. Ef ekki er tjáð er tjáningin prent notuð.

Finna skipunin hættir með stöðu 0 ef allar skrár eru unnar með árangri, meiri en 0 ef villur eiga sér stað.

Tjáningar

Tjáningin samanstendur af valkostum (sem hafa áhrif á heildaraðgerð frekar en vinnslu tiltekinnar skráar og alltaf aftur sönn), prófanir (sem skila sannri eða rangri gildi) og aðgerðir (sem hafa aukaverkanir og skilað sannur eða rangt gildi), allt aðskilin frá rekstraraðilum. Tjáningin - og er gert ráð fyrir þegar rekstraraðili er sleppt. Ef tjáningin inniheldur engar aðgerðir annað en -prune , þá er prenta framkvæmt á öllum skrám sem tjáningin er sönn.

Valkostir

Allir valkostir koma alltaf aftur sannarlega. Þeir taka alltaf gildi, frekar en að vinna aðeins þegar staðurinn þeirra í tjáningu er náð. Þess vegna er það best að setja þær í upphafi tjáningarinnar til að sýna skýrleika.

-daystart Mælikvarða (fyrir -amín, -tími, -mín, -tími, -mín og -tíma ) frá upphafi í dag frekar en frá 24 klukkustundum síðan.
-depth Ferlið innihald hvers möppu fyrir möppuna sjálft.
-fylgja Tilvísun táknræn tengsl. Þýðir -noleaf .
-hjálp eða - hjálp Prenta samantekt á stjórn lína notkun finna og hætta.
-maxdepth [númer] Læstu flestum stigum (ekki neikvæð heiltala) af möppum undir stjórnargögnum. Tjáningin -maxdepth 0 þýðir einungis að nota prófanirnar og aðgerðirnar við skipanalínuna.
-mindepth [númer] Ekki skal nota neinar prófanir eða aðgerðir á stigum sem eru minni en númerið (ekki neikvæð heiltala). Tjáningin -mindepth 1 þýðir að vinna öll skrár nema skipanalínan.
-mount Ekki fara niður möppur á öðrum skráarkerfum. Annað nafn fyrir -xdev , fyrir samhæfni við nokkrar aðrar útgáfur af finna .
-noleaf Ekki hagræða með því að gera ráð fyrir að framkvæmdarstjóra innihaldi 2 færri undirmöppur en þeirra sem eru í mikilli hleðslu. *
útgáfa eða útgáfa Prenta finndu útgáfu númerið og hætta.
-xdev Ekki fara niður möppur á öðrum skráarkerfum.

* Þessi valkostur er nauðsynlegur þegar leitað er á skráarkerfum sem fylgja ekki Unix-skráarsamningi, svo sem geisladiska eða MS-DOS skráarkerfi eða AFS-bindi. Hver skrá á venjulegu Unix skráakerfi hefur að minnsta kosti 2 harða tengla: nafn þess og þess . (tímabil) innganga. Þar að auki hafa undirskrár þess (ef einhver) hverja .. færslu sem tengist þeim möppu.

Þegar leit er að skoða möppu, eftir að hún hefur staðið í tvær færri undirmöppur en tengslatölur skráarinnar, veit það að restin af færslunum í möppunni eru ekki framkvæmdarstjóra ( blaðaskrár í möpputréinu). Ef aðeins þarf að skoða nöfn skrána, þá þarf ekki að skrá þau. Þetta gefur verulega aukningu á leitarnýtingu.

Próf

Numeric rök geta verið skilgreind sem:

+ n Fyrir meiri en n.
-n Fyrir minna en n.
n Fyrir nákvæmlega n.
-amín n Skráin var síðast opnuð fyrir nokkrum mínútum.
-anewer [skrá] Skráin var síðast opnuð nýlega en skráin var breytt. -Viðkomu er fyrir áhrifum af -fylgdu aðeins ef -fylgja kemur fyrirfram á skipanalínu.
-tími n Skráin var síðast opnuð n * fyrir 24 klukkustundum.
-cmin n Staða skráar var síðast breytt fyrir nokkrum mínútum.
-cnewer [skrá] Staða skráar var síðast breytt nýlega en skrá var breytt.
- Cnewer er fyrir áhrifum af- fylgja aðeins ef- fylgja kemur fyrir -greindu á stjórn lína.
-tími n Staða skráar var síðast breytt n * 24 klukkustundum síðan.
-þá Skráin er tóm og er annað hvort venjuleg skrá eða skrá.
-rangt Alltaf rangt.
-fstype [tegund] Skráin er á skráarkerfi af tilgreindri gerð. Gildar skráarkerfi eru mismunandi eftir mismunandi útgáfum Unix; ófullnægjandi listi yfir skráarkerfi gerðir sem eru samþykktar í einhverri útgáfu Unix eða annars er: Ufs, 4.2, 4.3, nfs, tmp, mfs, S51K, S52K. Þú getur notað -printf með% F tilskipuninni til að sjá tegundir skráakerfa þinnar.
-gid n Númer tölubóps skráar er n .
-hópur [gname] Skrá tilheyrir hópi gname (talnagildi hópsins leyfilegt).
-nafn [mynstur] Eins og -lítið, en samsvörunin er óviðunandi.
-iname [mynstur] Eins og- nafn , en leikurinn er óviðunandi. Til dæmis, mynstur fyrir * og F ?? passa við skrána heiti Foo , FOO , Foo , FOo , o.fl.
-num n Skráin inniheldur númer n .
-path [mynstur] Eins og -path , en leikurinn er óviðunandi.
-gegex [mynstur] Eins og -regex, en leikurinn er óviðunandi.
-línur n Skráin hefur n tengla.
-lheiti [mynstur] Skráin er táknræn hlekkur þar sem innihald passar skel mynstur. Meta stafirnir ekki meðhöndla / eða . sérstaklega.
-mín n Skrár gögn voru síðast breytt fyrir n mínútum síðan.
-martími n Skrár gögn voru síðast breytt n * 24 klukkustundum síðan.
-heiti [mynstur] Undirstaða skráarheiti (slóðin með leiðandi möppum fjarlægð) passar skel mynstur. Táknin ( * , ? , Og [] ) passa ekki við . í upphafi grunnnetsins. Til að hunsa möppu og skrárnar sem eru undir henni skaltu nota -prune ; sjá dæmi í lýsingu á- leið .
-greindu [skrá] Skráin var breytt nýlega en skrá . Tjáningin- neikvæð er fyrir áhrifum af- fylgja aðeins ef- fylgja kemur fyrir -þá á stjórn lína.
-nouser Enginn notandi samsvarar tölum notandanafns skráar.
-nogroup Enginn hópur samsvarar tölublaðsskrá skjalsins.
-stígur [mynstur] Skráarheiti passar skel mynstur . Meta stafirnir ekki meðhöndla / eða . sérstaklega; svo, til dæmis, finna. -path './sr*sc mun prenta færslu fyrir möppu sem heitir ./src/misc (ef það er til). Til að hunsa allt skráartré , notaðu -fram frekar en að skoða hvert skrá í trénu. Til dæmis, til að sleppa möppunni src / emacs og öllum skrám og möppum undir það og prenta nöfn annarra skrár sem finnast, gerðu eitthvað svona: finna. -path './src/emacs' -prune -o -print
-perm [ham] Bits leyfi bits eru nákvæmlega [ham] (octal eða symbolic). Táknhamir nota ham 0 sem upphafsstað.
-perm -mode Öll leyfi bita [ham] eru settar fyrir skrána.
-perm + ham Einhver leyfisbita [ham] er stillt fyrir skrána.
-regex [mynstur] Skráarheiti passar venjulegt tjáningarmynstur. Þetta er samsvörun á öllu slóðinni, ekki leit. Til dæmis, til að passa við skrá sem heitir ./fubar3, getur þú notað venjulega tjáninguna . * Bar. eða . * b. * 3 , en ekki b. * r3 .
-stærð n [bckw] Skrá notar n eininga pláss. Einingar eru 512 bæti blokkir sjálfgefið eða ef b fylgir n , bæti ef c fylgir n , kílóbæta ef k fylgir n , eða 2-bæti orð ef w fylgir n . Stærðinn telur ekki óbein blokk, en það telur blokkir í grimmum skrám sem eru ekki í raun úthlutað.
-satt Alltaf satt.
-type c Skráin er af gerð c :
b Loka (biðminni) sérstakt
c Einstaklingur (óbólusett) sérstakt
d Skrá
p Nefnd pípa (FIFO)
f Venjulegur skrá
l Tákn tengilinn
s Socket
D dyr (Solaris)
-uid n Tölugildi notandanafns skráar er n .
-notað n Skráin var síðast opnuð n dag eftir að hún var síðast breytt.
-user uname Skráin er í eigu notanda uname ( tölublað notendanafn leyfilegt).
-tegund c Sama og- tegund nema skráin sé táknræn hlekkur. Fyrir táknræn tengsl: Ef- fylgja ekki verið gefinn, satt ef skráin er tengill við skrá af tegund c ; ef- fylgt hefur verið gefið, satt ef c er l. Með öðrum orðum, fyrir táknræn tengsl,
-stýringin stýrir tegund skráarinnar sem -tegundin er ekki að athuga.

Aðgerðir

-exec stjórn ;

Framkvæma stjórn ; satt ef 0 stöðu er skilað. Allar eftirfarandi rök til að finna eru teknar til að vera rök fyrir stjórninni þar til rök sem samanstendur af `; ' er fundur. Strikið `{} 'er skipt út fyrir að núverandi skráarnúmer sé unnið hvar sem það gerist í rökunum við stjórnina, ekki bara í rökum þar sem það er ein, eins og í sumum útgáfum af finna . Báðir þessar byggingar gætu þurft að sleppa (með `\ ') eða vitna til að vernda þá frá skífunni. Skipunin er framkvæmd í byrjunarskránni.

-fls skrá

Satt; eins og -l en skrifaðu í skrá eins og -fprint.

-fprint skrá

Satt; prenta fullt skrá nafn í skrána skrá . Ef skrá er ekki til þegar finna er keyrt, er það búið til; ef það er til, er það stytt. Skránöfnin `` / dev / stdout '' og `` / dev / stderr '' eru meðhöndluð sérstaklega; þeir vísa til staðlaðrar framleiðsla og staðalfráviks framleiðsla, í sömu röð.

-fprint0 skrá

Satt; eins og -print0 en skrifaðu í skrá eins og -fprint.

-fprintf skráarsnið

Satt; eins og -printf en skrifaðu í skrá eins og -fprint.

-ok stjórn ;

Eins og -exec en spyrðu notandann fyrst (á staðalinntakinu); ef svarið byrjar ekki með "y" eða "Y", ekki keyra stjórnina og skila aftur rangt.

-prenta

Satt; Prenta allt nafnið á stöðluðu framleiðslunni, fylgt eftir með newline.

-print0

Satt; Prenta allt nafnið á venjulegu framleiðslunni, fylgt eftir með nulpersónu. Þetta leyfir skráarnöfn sem innihalda nýjar línur til að vera túlkuð rétt af forritum sem vinna úr niðurstöðum.

-printf sniði

Satt; prenta snið á stöðluðum framleiðsla, túlka `\ 'sleppur og`%' tilskipanir. Vettvangsbreidd og nákvæmni má tilgreina eins og með `printf 'C virka. Ólíkt -print, -printf bætir ekki við newline í lok strengsins. The sleppur og tilskipanir eru:

a

Vekjaraklukka.

\ b

Backspace.

\ c

Hættu að prenta úr þessu sniði strax og skola framleiðsluna.

\ f

Form fæða.

\ n

Newline.

\ r

Flutning aftur.

\ t

Lárétt flipi.

\ v

Lóðrétt flipi.

\\

A bókstaflega bakslag (`\ ').

\ NNN

Eðli sem ASCII kóða er NNN (oktal).

A `\ 'stafur eftir einhverjum öðrum staf er meðhöndluð sem venjulegt eðli, þannig að þau eru bæði prentuð.

%%

A bókstafleg prósent merki.

% a

Síðasta aðgangstími skráarinnar á sniðinu sem skilað er með C `ctime 'fallinu.

% A k

Síðasta aðgangstími skráarinnar á sniðinu sem tilgreint er með k , sem er annaðhvort `@ 'eða tilskipun fyrir aðgerðina C` strftime'. Möguleg gildi fyrir k eru taldar upp hér að neðan; Sumir þeirra gætu ekki verið tiltækar á öllum kerfum vegna mismunandi tíma á milli "strftime" milli kerfa.

@

sekúndur frá 1. janúar 1970, 00:00 GMT.

Tími svið:

H

klukkustund (00..23)

Ég

klukkustund (01..12)

k

klukkustund (0..23)

l

klukkustund (1..12)

M

mínútu (00..59)

p

AM eða PM á staðnum

r

tími, 12 klukkustundir (klst: mm: ss [AP] M)

S

annað (00..61)

T

tími, 24 klst (hh: mm: ss)

X

tímasetning staðsetningar (H: M: S)

Z

tímabelti (td EDT), eða ekkert ef ekkert tímabelti er ákvarðað

Dagsetning sviðum:

a

stutt nafn vikunnar í dag (Sun..Sat)

A

Fullt nafn dagsins í landinu, breytilegt lengd (sunnudagur ... í dag)

b

Skammstafað mánuð nafn sveitarfélaga (Jan ..Dec)

B

Fullt nafn nafnsins, breytilegt lengd (janúar, desember)

c

Dagsetning og tími landsins (laugardagur 04 nóvember 12:02:33 EST 1989)

d

dagur mánaðarins (01..31)

D

dagsetning (mm / dd / á)

h

það sama og b

j

Dagur árs (001..366)

m

mánuður (01..12)

U

viku fjöldi árs með sunnudag sem fyrsta dag vikunnar (00..53)

w

dagur vikunnar (0..6)

W

viku fjöldi árs með mánudag sem fyrsta dag vikunnar (00..53)

x

Dagsetning birtingar svæðis (mm / dd / yy)

y

síðustu tveir tölustafir ársins (00..99)

Y

ár (1970 ...)

% b

Stærð skráar í 512 bæti blokkum (rúnnuð upp).

% c

Síðasta stöðu skráarinnar breytist í sniðinu sem er skilað með C `ctime 'fallinu.

% C k

Síðasti skráarstaður breytingartímans á sniðinu sem tilgreint er með k , sem er það sama og fyrir% A.

% d

Dýpt skráarinnar í möpputréinu; 0 þýðir að skráin er stjórn lína rök.

% f

Nafn skráar með öllum leiðandi möppum fjarlægt (aðeins síðasta hlutinn).

% F

Tegund skráarkerfisins sem skráin er á; þetta gildi er hægt að nota fyrir -fstype.

% g

Heiti hóps eða heiti hóps, ef hópurinn hefur ekkert nafn.

% G

Heiti hóps Númerar skráar.

% h

Leiðandi framkvæmdarstjóra af heiti skráar (allt en síðasti þátturinn).

% H

Skipanalínu rifrildi þar sem skrá fannst.

% i

Innskráarnúmer skráar (í tugabrotum).

% k

Stærð skráar í 1K blokkum (ávalin upp).

% l

Object of symbolic link (tómt streng ef skrá er ekki táknræn hlekkur).

% m

Heimildarbitar skráar (í oktal).

% n

Fjöldi harða tengla við skrá.

% p

Nafn skráar.

% P

Nafn skráar með heitinu á skipanalínunni þar sem það fannst var fjarlægt.

% s

Stærð skráar í bæti.

% t

Síðasta breytingartími skráarinnar á sniðinu sem skilað er með C `ctime 'fallinu.

% T k

Síðasta breytingartími skráarinnar á sniðinu sem tilgreint er með k , sem er það sama og fyrir% A.

% u

Notandanafn skráar eða tölfræðileg notandanafn ef notandinn hefur ekkert nafn.

% U

Tölugildi notandanafns skráar.

A `% 'stafur ásamt öðru stafi er fargað (en annar stafurinn er prentaður).

-prune

Ef -depth er ekki gefið, satt; ekki niður núverandi möppu.
Ef -depth er gefið, rangt; engin áhrif.

-ls

Satt; skráðu núverandi skrá í `ls -dils 'sniði á venjulegum framleiðsla. Blokkatölurnar eru 1K blokkir, nema umhverfisbreytan POSIXLY_CORRECT sé stillt, í því tilviki eru 512 bæti blokkir notaðar.

Flugrekendur

Skráð í samræmi við minnkandi forgang:

( expr )

Force forgang.

! expr

True ef expr er ósatt.

-not expr

Eins og ! expr .

expr1 expr2

Og (óbeint); expr2 er ekki metið ef expr1 er ósatt.

expr1 -a expr2

Sama og expr1 expr2 .

expr1 og expr2

Sama og expr1 expr2 .

expr1 -o expr2

Eða; expr2 er ekki metið ef expr1 er satt.

expr1 -or expr2

Sama eins og expr1 -o expr2 .

expr1 , expr2

Listi; bæði expr1 og expr2 eru alltaf metin. Gildið expr1 er fargað; gildi listans er gildi expr2 .

Dæmi

finna / heima-notandi joe

Finndu allar skrár undir möppunni / heimili í eigu notandans joe.

finna / usr-nafn * stat

Finndu allar skrár undir möppunni / usr endar í ".stat".

finna / var / spool -mtime +60

Finndu allar skrár undir möppunni / var / spool sem var breytt meira en 60 dögum síðan.

finna / tmp-name kjarna-tegund f -print | xargs / bin / rm -f

Finndu skrár sem heitir kjarna í eða undir möppunni / tmp og eyða þeim. Athugaðu að þetta mun virka rangt ef það eru einhverjar skrár sem innihalda nýjar línur, einn eða tvöfaldur vitna eða bil.

finna / tmp-name kjarna-tegund f -print0 | xargs -0 / bin / rm -f

Finndu skrár sem heitir kjarna í eða undir möppunni / tmp og eyða þeim, vinndu skráarnöfn á þann hátt að skrá eða möppanöfn sem innihalda eitt eða tveggja tilvitnanir, rými eða nýjar línur eru meðhöndluðar á réttan hátt. The -name prófið kemur fyrir prófið -type til að forðast að þurfa að hringja í stat (2) á hverjum skrá.

finna. -type f -exec skrá '{}' \;

Keyrir `skrá 'á öllum skrám í eða undir núverandi skrá. Takið eftir að handtökurnar eru meðfylgjandi í einum tilvitnunarmerkjum til að vernda þá frá túlkun sem leturgröftur á skel. Semicolon er á sama hátt varið með því að nota bakslag, þó ';' hefði getað verið notað í því tilfelli líka.

finndu / \ (-perm -4000 -fprintf /root/suid.txt '% # m% u% p \ n' \), \ \ (-size + 100M -fprintf /root/big.txt '% -10s% p \ n '\)

Flettu skráarkerfinu einu sinni, skráðu setuid skrár og möppur í /root/suid.txt og stórar skrár í /root/big.txt .

finndu $ HOME -mtime 0

Leitaðu að skrám í heimasíðunni þinni sem hefur verið breytt síðustu 24 klukkustundirnar. Þessi skipun virkar með þessum hætti vegna þess að tíminn síðan hver skrá var síðast breytt skiptist í 24 klukkustundir og allir hlutir sem eftir eru eru eytt. Það þýðir að það passar við -tíma

0 , skrá verður að hafa breytingar á fortíðinni sem er innan við 24 klukkustundum síðan.

finna. -perm 664

Leitaðu að skrám sem hafa lesið og skrifað leyfi fyrir eiganda þeirra og hóp en aðrir notendur geta lesið en ekki skrifað við. Skrár sem uppfylla þessi skilyrði en hafa aðrar heimildir sem eru settar (til dæmis ef einhver getur keyrt skrána) verður ekki samsvörun.

finna. -perm -664

Leitaðu að skrám sem hafa les- og skrifaheimild fyrir eiganda og hóp og hvaða aðrir notendur geta lesið án tillits til viðbótar viðbótarbits (til dæmis executable bita). Þetta mun passa við skrá sem hefur ham 0777, til dæmis.

finna. -perm / 222

Leitaðu að skrám sem er skrifað af einhverjum (eigandi þeirra, eða hópi þeirra, eða einhver annar).

finna. -perm / 220 finna. -perm / u + w, g + w finna. -perm / u = w, g = w

Allar þrír þessara skipana gera það sama, en sá fyrsti notar octal framsetning skráarsniðsins og hinir tveir nota táknmyndina. Þetta skipar öll leit að skrám sem hægt er að skrifa með annaðhvort eiganda eða hópi þeirra. Skrárnar þurfa ekki að vera skriflegar bæði af eiganda og hópi sem á að passa við; annað hvort mun gera það.

finna. -perm -220 finna. -perm -g + w, u + w

Báðar þessar skipanir gera það sama; leitaðu að skrám sem eru skrifuð af eiganda sínum og hópi þeirra.

finna. -perm -444-perm / 222! -perm / 111 finna. -perm -a + r -perm / a + w! -perm / a + x

Þessir tveir skipanir leita bæði að skrám sem eru læsileg fyrir alla (-perm -444 eða -perm -a + r), hafa að minnsta kosti á skrifbita sett (-perm / 222 eða -perm / a + w) en eru ekki executable fyrir hver sem er (! -perm / 111 og! -perm / a + x í sömu röð)

Mikilvægt: Notaðu stjórn mannsins ( % maður ) til að sjá hvernig stjórn er notuð á tölvunni þinni.