Rasti pagal vardą
Lengviausia komanda, kurią galime naudoti ieškodami failo, yra pagal konkretų pavadinimą kataloge. Šios komandos pranašumas yra tas, kad „bash“ suras failą, net jei jis bus viename iš rekursinių katalogų, esančių perduoto katalogo kelyje. Pažvelkime į pavyzdį:
rasti kodą -name ifelse4.shŠi komanda ras failą ifelse4.sh rekursyviai katalogo kodo viduje. Pažiūrėkime šios komandos išvestį:
Raskite failą pagal pavadinimą
Aukščiau minėtame pavadinimo variante skiriamos didžiosios ir mažosios raidės. Jei norite rasti failą, neatsižvelgiant į pavadinimo atvejį, naudokite šią komandą: rasti kodą -inam ifelse4.sh
Rasti failą pagal reguliariąją išraišką
Mes galime naudoti paprastus įprastus posakius, kad rastume failą kataloge, kuris atitiktų tą reguliariąją išraišką. Parodykime tai paprasta komanda, norėdami rasti visus failus su bet kokiu pavadinimu ir su plėtiniu .txt:
rasti kodą -regex ".* \.sh “Štai ką mes grąžiname naudodami šią komandą:
Rasti failą pagal regex
Supraskime, ką čia reiškia ši komanda:
- -regex: Tai tik reiškia, kad mes toliau pateiksime taisyklingą išraišką.
- Reguliariajame posakyje pirmasis periodas (.) reiškia, kad bet koks failo pavadinimo simbolių skaičius turi atitikti.
- Toliau, naudodami *, suderinsime bet kokį bet kurio simbolio pakartojimų skaičių (dėl laikotarpio).
- Galiausiai suderiname visus failus su .sh prailginimas.
Geras dalykas reguliarioje išraiškoje gali būti tai, kad ją galima padaryti kuo lankstesnę, kaip jūs galite apibrėžti. Pakeiskite aukščiau pateiktą pavyzdį, kad rastume failus su .sh ir .txt plėtinys taip pat:
rasti kodą -regex ".* \.sh | \.txt "Ieškoma failų, modifikuotų per paskutines n minutes
Taip pat lengva rasti failą, kuris buvo modifikuotas per paskutines n minutes. Pažvelkime iš karto į pavyzdį:
rasti kodą -mmin -90Pažiūrėkime šios komandos išvestį:
Ieškomas failas, modifikuotas per pastarąsias 90 minučių
Ieškoma failų, modifikuotų per pastarąsias n dienas
Taip pat lengva rasti failą, kuris buvo modifikuotas per pastarąsias n dienas. Pažiūrėkime iš karto į pavyzdį:
rasti kodą -mtime 0Štai ką mes grąžiname naudodami šią komandą:
Raskite failą pagal dienas
Rasti failus pagal leidimus
Taip pat galima rasti failą su tam tikrais leidimais. Mes galime rasti failus, susietus su vartotoju ar vartotojų grupe:
rasti . -vartotojas shubhamŠtai ką mes grąžiname naudodami šią komandą:
Vartotojui priklausančių failų radimas
Mes taip pat galime pritaikyti tą pačią logiką ieškodami failų, priklausančių vartotojų grupei: rasti . -grupės šaknis
Rasti failus pagal dydį
Norėdami rasti failus, kurie yra didesni nei nurodyto dydžio, galite rasti naudodami šią komandą:
raskite kodą -size +500Štai ką mes grąžiname naudodami šią komandą:
Raskite failą pagal dydį
Be baitų, failo dydį galima paminėti kaip:
- b: 512 baitų blokai: tai yra numatytasis vienetas, jei nė vienas nenurodytas
- c: baitai
- k: kilobaitai
- M: megabaitai
- G: gigabaitai
Failų paieška pagal tipą
Galima rasti failą su tipu. Mes turime šiuos paieškos komandos tipus:
- d: katalogas
- f: įprasta byla
- l: simbolinė nuoroda
- b: buferinis blokas
- c: nepumpuotas personažas
- p: pavadintas vamzdis
- s: lizdas
Naudokime komandą, norėdami rasti įprastą failą:
rasti . -f tipasŠtai ką mes grąžiname naudodami šią komandą:
Raskite failus pagal tipą
Failų su keliomis sąlygomis paieška
Kaip paskutinį pavyzdį galima rasti failus pridėjus kelias sąlygas, kaip matėme aukščiau. Išbandykime kelias sąlygas vienoje paieškos komandoje dabar:
rasti . -dydis + 1c - ir vardas "*.sh “Štai ką mes grąžiname naudodami šią komandą:
Raskite failus su keliomis sąlygomis
Išvada
Šioje pamokoje mes panagrinėjome, kaip galime naudoti komandą „find“, kad rastume failus su kažkokiu pavadinimu, pagal leidimus ar tipą. Mes netgi galime pridėti kelias sąlygas, kad rastume failus, kurie atitinka visas sąlygas. Dar labiau žaiskite su komandomis, kad finansuotumėte „rela“ galią.