find command unix
Uvod za iskanje ukaza v Unixu: Iskanje datotek in imenikov z ukazom Unix Find File Command
Ukaz za iskanje Unix je zmogljiv pripomoček za iskanje datotek ali imenikov.
Iskanje lahko temelji na različnih kriterijih, ujemajoče se datoteke pa se lahko izvajajo z določenimi dejanji. Ta ukaz se rekurzivno spusti v hierarhijo datoteke za vsako določeno ime poti.
=> Kliknite tukaj za celotno serijo vadnic za Unix
Kaj se boste naučili:
Primer razpršilne tabele c ++
Poiščite ukaz v Unixu
Sintaksa:
find (options) (paths) (expression)
Možnosti tega ukaza se uporabljajo za določanje načina obravnave simbolnih povezav. Sledi nabor poti za iskanje. Če poti niso določene, se uporabi trenutni imenik. Dani izraz se nato zažene na vsaki od datotek, ki jih najdete na poteh.
Izraz je sestavljen iz vrste možnosti, testov in dejanj, od katerih vsak vrne logično vrednost. Izraz se ovrednoti od leve proti desni za vsako datoteko na poti, dokler ni določen rezultat, tj. Za rezultat je znano, da je resničen ali neresničen.
- Izrazi možnosti se uporabljajo za omejitev iskanja in vedno vrnejo true.
-
- -depth: obdelajte vsebino imenika pred obdelavo samega imenika.
- -maxdepth: najvišje ravni pod navedenimi potmi, da se spustite na tekmo.
- -mindepth: najmanjše stopnje onkraj predvidenih poti, da se spustite pred ujemanjem.
-
- Testni izrazi se uporabljajo za ovrednotenje določenih lastnosti datotek in temu primerno vrnitev true ali false. (Kadar koli je uporabljeno štetje 'n': brez kakršne koli predpone je ujemanje natančna vrednost n; s predpono '+' je ujemanje za vrednosti, večje od n; in s predpono '-' je ujemanje za vrednosti, manjše od n.)
-
- -atime n: Vrne true, če je bila datoteka dostopna pred n dnevi.
- -ctime n: vrne true, če je bilo stanje datoteke spremenjeno pred n dnevi.
- -mtime n: vrne true, če je bila vsebina datoteke spremenjena pred n dnevi.
- -name vzorec: Vrne true, če se ime datoteke ujema s priloženim vzorcem lupine.
- -iname vzorec: vrne true, če se ime datoteke ujema s priloženim vzorcem lupine. Tu se ne ujema z velikimi in malimi črkami.
- -path vzorec: vrne true, če se ime datoteke s potjo ujema z vzorcem lupine.
- -regex vzorec: vrne true, če se ime datoteke s potjo ujema z regularnim izrazom.
- -size n: Vrne true, če je velikost datoteke n blokov.
- -perm - mode: vrne true, če so za datoteko nastavljeni vsi bitji dovoljenj za način.
- -type c: Vrne true, če je datoteka vrste c (npr. 'b' za datoteko blokovne naprave, 'd' za imenik itd.).
- -username: Vrne true, če je datoteka v lasti uporabniškega imena ‘name’.
-
- Izrazi dejanj se uporabljajo za določanje dejanj, ki imajo neželene učinke in lahko vrnejo true ali false. Če niso podana dejanja, se za vse ujemajoče se datoteke izvede dejanje '-print'.
-
- -delete: Izbrišite ujemajočo se datoteko in ob uspehu vrnite true.
- -exec ukaz: Izvedite dani ukaz za vsako ujemajočo se datoteko in vrnite true, če je vrnjena vrednost 0.
- -ok ukaz: Tako kot izraz 'exec', vendar najprej potrdite z uporabnikom.
- -ls: navedite ujemajočo se datoteko v obliki 'ls -dils'.
- -print: natisnite ime ustrezne datoteke.
- -prune: Če je datoteka imenik, se ne spuščajte vanj in vrnite true.
-
- Izraz je ovrednoten od leve proti desni in sestavljen z uporabo naslednjih operatorjev.
-
- ( ekspr ) : Uporablja se za vsiljevanje prednosti.
- ! expr: Uporablja se za zanikanje izraza.
- izraz1 -do expr2: Rezultat je 'in' obeh izrazov. Izraz2 se izračuna samo, če izraz1 je res.
- expr1 expr2: Operator 'in' je v tem primeru impliciten.
- izraz1 -ali expr2: Rezultat je 'ali' obeh izrazov. Izraz2 je ovrednoten, izraz1 pa je napačen.
-
Primeri
Naštejte vse datoteke, ki jih najdete v trenutnem imeniku, in njegovo hierarhijo
$ find.
Naštejte vse datoteke, ki jih najdete v trenutni hierarhiji, in vso hierarhijo spodaj / home / xyz
$ find. /home/XYZ
V trenutnem imeniku in njegovi hierarhiji poiščite datoteko z imenom abc
$ find ./ -name abc
V trenutnem imeniku in njegovi hierarhiji poiščite imenik z imenom xyz
$ find ./ -type d -name xyz
Poiščite datoteko z imenom abc.txt pod trenutnim imenikom in prosite uporabnika, da izbriše vsako ujemanje.
Upoštevajte, da je niz '{}' med izvajanjem nadomeščen z dejanskim imenom datoteke in da je ';' niz se uporablja za zaključek ukaza, ki naj se izvrši.
$ find ./ -name abc.txt -exec rm -i {} ;
Poiščite datoteke, ki so bile v sedmih dneh spremenjene pod trenutnim imenikom
$ find ./ -mtime -7
Poiščite datoteke, ki imajo v trenutni hierarhiji nastavljena vsa dovoljenja
$ find ./ -perm 777
Zaključek
Skratka, Find Command v Unixu vrne vse datoteke pod trenutnim delovnim imenikom. Nadalje, ukaz find uporabniku omogoča, da določi dejanje, ki ga je treba izvesti za vsako ujemajočo se datoteko.
=> Kliknite tukaj za celotno serijo vadnic za Unix
Priporočeno branje
- Izreži ukaz v Unixu s primeri
- Ls ukaz v Unixu s primeri
- Manipulacija z datotekami v Unixu: Pregled datotečnega sistema Unix
- Sintaksa ukaza Unix Cat, možnosti s primeri
- Ukaz Grep v Unixu s preprostimi primeri
- Ukaz za razvrščanje Unix s sintakso, možnostmi in primeri
- Tar Command v Unixu za ustvarjanje varnostnih kopij (primeri)
- Kako primerjati dve datoteki v Unixu: Ukazi za primerjavo datotek