Poiščite po imenu
Najlažji ukaz, ki ga lahko uporabimo za iskanje datoteke, je določeno ime v imeniku. Prednost tega ukaza je, da bo bash našel datoteko, tudi če je prisotna v enem od rekurzivnih imenikov znotraj posredovane poti imenika. Oglejmo si primer:
poiščite kodno ime ifelse4.shTa ukaz bo poiskal datoteko ifelse4.sh rekurzivno znotraj kode imenika. Poglejmo izhod za ta ukaz:
Poiščite datoteko po imenu
Možnost imena, ki smo jo omenili zgoraj, razlikuje med velikimi in malimi črkami. Če želite datoteko najti ne glede na veliko črko v imenu, uporabite naslednji ukaz: najdi kodo -ime ifelse4.sh
Iskanje datoteke z regularnim izrazom
Preproste regularne izraze lahko uporabimo za iskanje datoteke v imeniku, ki ustreza temu regularnemu izrazu. Pokažimo to s preprostim ukazom za iskanje vseh datotek s poljubnim imenom in s pripono .txt:
poišči kodo -regex ".* \.sh "Tukaj dobimo s tem ukazom:
Iskanje datoteke s pomočjo regularnega izraza
Razumejmo, kaj ta ukaz tukaj pomeni:
- -regularni izraz: To samo pomeni, da bomo naslednji podali regularni izraz.
- V regularnem izrazu je prvo obdobje (.) pomeni, da se poljubno število znakov v imenu datoteke ujema.
- Nato z * primerjamo poljubno število ponovitev katerega koli znaka (zaradi pike).
- Končno povežemo vse datoteke z .sh podaljšanje.
Dobra stvar regularnega izraza je lahko ta, da je lahko prilagodljiv, kot ga lahko določite. Spremenimo zgornji primer, da poiščemo datoteke z .sh in .razširitev txt:
poišči kodo -regex ".* \.sh | \.txt "Iskanje datotek, spremenjenih v zadnjih n minutah
Tudi iskanje datoteke, ki je bila spremenjena v zadnjih n minutah, je enostavno. Poglejmo si primer takoj:
poišči kodo -min -90Poglejmo izhod za ta ukaz:
Iskanje datoteke, spremenjene v zadnjih 90 minutah
Iskanje datotek, spremenjenih v zadnjih n dneh
Tudi iskanje datoteke, ki je bila spremenjena v zadnjih n dneh, je enostavno. Poglejmo si primer takoj:
poiščite kodo -mtime 0Tukaj dobimo s tem ukazom:
Poiščite datoteko po dnevih
Iskanje datotek po dovoljenjih
Možno je tudi najti datoteko s posebnimi dovoljenji. Najdemo datoteke, ki so povezane z uporabnikom ali uporabniško skupino:
najti . -uporabnik shubhamTukaj dobimo s tem ukazom:
Iskanje datotek, ki pripadajo uporabniku
Isto logiko lahko uporabimo tudi za iskanje datotek, ki pripadajo uporabniški skupini: najti . -skupinski koren
Iskanje datotek po velikosti
Datoteke, ki so večje od določene velikosti, najdete z naslednjim ukazom:
poiščite velikost kode +500Tukaj dobimo s tem ukazom:
Poiščite datoteko po velikosti
Poleg bajtov lahko velikost datoteke omenimo kot:
- b: 512-bajtni bloki: To je privzeta enota, če ni navedena nobena
- c: bajti
- k: kilobajtov
- M: megabajti
- G: gigabajti
Iskanje datotek po vrsti
Datoteko s tipom je mogoče najti. Za ukaz find imamo naslednje vrste:
- d: imenik
- f: navadna datoteka
- l: simbolna povezava
- b: medpomnjeni blok
- c: nebuferirani znak
- p: imenovana cev
- s: vtičnica
Z ukazom poiščimo običajno datoteko:
najti . -tip fTukaj dobimo s tem ukazom:
Poiščite datoteke po vrsti
Iskanje datotek z več pogoji
Kot zadnji primer je mogoče datoteke najti tako, da dodamo več pogojev, kot smo videli zgoraj. Poskusimo zdaj več pogojev v enem samem ukazu find:
najti . -velikost + 1c -in -ime "*.sh "Tukaj dobimo s tem ukazom:
Poiščite datoteke z več pogoji
Zaključek
V tej lekciji smo preučili, kako lahko z ukazom find najdemo datoteke z določenim imenom, dovoljenji ali vrstami. Lahko celo dodamo več pogojev, da poiščemo datoteke, ki izpolnjujejo vse pogoje. Še bolj se igrajte z ukazi za financiranje rela moči.