Kuidas kasutada käsu leidmist Linuxis? Kaasatud 40 näidet

Leida on võimas käsurida, mis võimaldab süsteemi administraatoritel leida ja hallata faile ja katalooge laia otsingukriteeriumi alusel. See võib faile leida nime, tüübi või laienduse, suuruse, õiguste jne järgi.


Lisaks failide ja kataloogide leidmisele võimaldab leidmiskäsu kombineerimine teistega tulemuste nimel tegutseda. Suvandi -exec lisamine võimaldab süsteemiadministraatoritel käivitada väliseid käske ja teha toiminguid, näiteks kopeerida, teisaldada, kustutada või muuta failide õigusi, mis vastavad määratletud kriteeriumidele, nagu suurus, nimi jne..

Selles artiklis alustame põhilisi leidmiskäsklusi näidetega. See näitab teile, kuidas faile ja katalooge leida. Seejärel näitame teile, kuidas kasutada funktsiooni -exec failide või kataloogide toimimiseks nende suuruse, lubade jms alusel.

Üldine käsu leidmise süntaks on

leidke {tee} {nimi -faili või ots-otsimiseks} {toiming-võtmiseks}

Kus,

  • tee määrab kataloogi.
  • faili nimi või otsitav: otsitava faili või kataloogi nimi
  • võetavad toimingud: näiteks kopeerimine, kustutamine, teisaldamine jne.

Selles õpetuses selgitame, kuidas kindlaksmääratud mustritele vastavaid faile ja katalooge leida. Samuti näeme, kuidas toiminguid teha failide või kataloogidega, mille leidmiskäsk leiab. Juhend põhineb Ubuntu, kuid on rakendatav enamiku Linuxi distributsioonide ja versioonide jaoks.

Contents

Failide ja kataloogide otsimine

Otsige konkreetseid faile nime või laiendi järgi

Konkreetse faili otsimiseks käivitage järgmine käsk juurest (/). Käsk sisaldab otsitava faili täpset nime.

leidma. -nimi fail22.txt

Väljund

./test/file22.txt
./sales/file22.txt

Pange tähele, et tulemused sisaldavad teed. See on oluline, kui te ei tea kataloogi, kus fail asub, või kui see asub mitmes kohas.

Faili saate otsida ka mõnes muus kataloogis, kui olete praeguses asukohas. Sel juhul peate sisestama selle kataloogi tee, kust soovite otsida.

leidke ./test -name fail22.txt

Konkreetsete failide otsimine teises kataloogis

Meie puhul otsime testkataloogis kõiki neid, mis algavad tähtede failiga.

faili leidmine ./test -name *

Väljund

./test/file22.txt
./test/file30.doc
./test/fail1.txt
./ test / fail5, dok

Otsige faile laiendi järgi

Teatud laiendiga failide otsimiseks lisage see käsku.

leidma. -nimi * .txt

Väljund

./test/subtest/subfil.txt
./test/file22.txt
./test/fail1.txt
./home1/files32.txt
./home2/file22.txt
./qa/tags.txt

Otsige nime järgi faile ja katalooge

Kasutage allolevat käsku failide ja kataloogide otsimiseks, mis algavad tähtedega qa. Meie arvutis on failid qatree.txt ja qa.txt, aga ka kataloog nimega qa.

Kui käitame käsku;

leida ./-nimi "qa *"

Tagastab järgmise väljundi

./test/qatree.pdf
./test/qa.txt
./ kodu / qa

Käsk tagastab otsingukriteeriumidele vastavad failid ja kataloogid. Ainult failide või kataloogide leidmiseks peate selle käsus täpsustama.

Otsige ainult faile või katalooge

Ainult failide jaoks kasutage lülitit tüüp f.

Ainult failid

leida ./-tüüpi f-nimi "qa *"

Väljund

./test/qatree.pdf
./test/qa.txt

Ainult kataloogid

Ainult kataloogide leidmiseks lisage tüüp d.

leida ./-tüüpi d-nimi "qa *"

Väljund

./ kodu / qa

Väiketähtede tundmise käsk

Kõik -nime-lülitiga otsingud on tõstutundlikud ja ei anna tulemusi suurtähtedega. Kõigi juhtumite saamiseks kasutage -iname.

leid ./ -iname "qa *"

Väljund

./test/qatree.pdf
./test/qa.txt
./test/QAtest.txt
./ kodu / qa

Otsige faili mitmest kataloogist

Erinevates kataloogides olevate failide leidmiseks lisage käsku nende teed. Meie puhul kontrollime testi- ja numbrikatalooge.

leidke ./test ./numbriline -nimi fail22.txt -tüüp f

Väljund

./test/file22.txt
/root/numeric/file22.txt

Kõigist kataloogidest saate leida mitu erineva laiendiga faili

Saate käsu leidmise abil leida mitu faili, millel on erinevad laiendid, näiteks * .doc, * .txt * .pdf jne. Seda saab teha eraldi, üks laiend korraga või kasutades ainult ühte käsku, mis sisaldab kõiki soovitud laiendid.

leidma. -tüüp f (-nimi "* .txt" -o-nimi "* .pdf" -o-nimi "* .doc" )

väljund

./test/subtest/subfil.txt
./test/qatree.pdf
./test/file22.txt
./test/qa.txt
./test/file30.doc
./raamatud/acro.pdf
./data1/FILE22.txt
./docs/files32.txt

Otsige teatud teksti sisaldavaid faile

Mõnikord soovite pääseda juurde failile, mis sisaldab teatud teksti, kuid ei suuda selle faili nime ega asukohta meelde tuletada. See käsk võimaldab teil leida kõik failid, mis sisaldavad teie sihtteksti.

Kõigi failide, mis sisaldavad sõna hüperkonvergents, otsimiseks kasutage;

leida / -tüüp f -exec grep -l -i "hüperkonvergents" {};

Väljund

/ juur / numbriline / hci
/ juur / HCIP

Valik –i võimaldab käsul juhtumeid ignoreerida ja leiab teksti kas suurtähtedega või mitte, st hüperkonvergents, hüperkonvergents jne..

Konkreetses kataloogis olevate failide otsimiseks lisage see lihtsalt käsku

leidke ./numbriline -tüüp f -exec grep -l -i "hüperkonvergents" {};

Väljund

./ numbriline / hci

Failide ja kataloogide otsimine suuruse põhjal

Võite leida kõik failid või kataloogid, mis on väiksemad, teatud suurusega võrdsed või suuremad, teatud vahemikus või tühjad. Kasutage sobivat suuruse vormingut sõltuvalt otsitavate failide või kataloogide tüübist.

Suuruse valikud hõlmavad;

c – baiti

k – kilobaiti

M – megabaiti

G – gigabaiti

Otsige kindla suurusega faile – 30 MB

Otsimiseks leidke kõik 30 MB failid

leida / -suurus 30M

Otsige kindlaksmääratud suurusest suuremaid faile

leida -suurus + 2M

Väljund

. /Lae alla/ubuntu18043.iso
./.cache/pip/http/6/e/3/8/3/6e38383f41850c3e5705d48116bc52f81b92a80500f414305057 7a9c

Leidke praegusest kataloogist vähem kui 10 MB faile

leidma. -tüüpi f-suurus -10M

Leidke faile, mille suurus on vahemikus 100-200 MB

Kui otsite faile kindlas vahemikus, näiteks vahemikus 100 kuni 200 MB

leidke / -suurus + 100M -suurus -200M

Otsige katalooge, mis on suuremad kui 20 kb

leid / tüüp d-suurus + 20 k

Tühjade failide ja kataloogide otsimine.

Failid

leida ./-tüüpi f-suurus 0

või

leida ./-tüüp f – tühi

Kataloogid

leida ./-tüüpi d – tühi

Failide otsimine vanuse või muutmise aja järgi

Leidke faile, mis on vanemad kui n päeva

leid / tee / tüüpi f-nimi ‘* .txt’ -aeg +8

-Mtime +8 otsib txt-faile, mis on vanemad kui 8 päeva.

Muutmiskuupäeva järgi

See otsib faile, mida on muudetud viimase 17 tunni jooksul

leidma. -mtime -17-tüüpi f

Otsib viimase 10 päeva jooksul muudetud katalooge

leidma. -kuu -10-tüüpi d

Otsige faile juurdepääsu või muutmise põhjal

Failide otsimine kuupäeva või kellaaja alusel. See võimaldab teil vaadata faile, millele on määratud ajavahemiku jooksul juurde pääsetud või millele pole juurde pääsetud.

Failide vaatamiseks kodukataloogis, millele pole viimase 10 päeva jooksul juurde pääsetud.

leid / kodu-aeg +10

Failidele pääses täpselt 10 päeva tagasi

leid / kodu-aeg 10

Juurdepääs viimase 10 päeva jooksul

leid / kodu-aeg -10

Leidke viimase n päeva jooksul muudetud faile

Samuti saate käsu abil otsida faile kataloogist / home, mida on viimase 10 päeva jooksul muudetud;

leid / kodu -aeg -10

Otsige kindla aja jooksul muudetud faile.

Näiteks kõik failid, mida on kodukataloogis muudetud vahemikus 6–15 päeva tagasi.

leid / kodutüüp f-aeg +6-kellaaeg -15

Viimase 10 minuti jooksul juurde pääsetud failid ja kataloogid

Viimase 10 minuti jooksul juurdepääsetavate failide leidmiseks kasutage suvandit -amin.

leidma. -amiin -10-tüüpi f

Väljund

./.bash_history
./[e-posti aadress on kaitstud]: ~ #

Viimase 10 minuti jooksul avatud kataloogid

leidma. -amiin -10-tüüpi d

Otsige konkreetsetele õigustele vastavaid faile

Süntaks

$ režiimi režiim

Kus režiim on luba, mis on numbriline, näiteks 644, 655, 700, 777 jne, või tähed, näiteks u = x, a = r + x jne..

Režiimi saate määratleda kolmel järgmisel viisil.

  1. Ilma eesliiteta, kui soovite leida faile, millel on täpsed õigused.
  2. „-“ puhul failide jaoks, millel on vähemalt määratletud luba. See tagastab failid, millel on nii määratud kui ka täiendavad kõrgemad õigused.
  3. “/” Kasutamine nõuab faili loal omaniku või rühma täpsustamist.

Otsige faile, millel on luba 777

leida-perm 777

Väljund

./ fail1

Leidke faile vähemalt 766-ga
leida -perm -766

Väljund

./ fail2
./ fail1

Käsk otsib kõiki faile, milles

  • Failiomanikul on õigused lugemiseks / kirjutamiseks / täitmiseks.
  • Grupil on lugemis- / kirjutamisõigused
  • Teistel on lugemis- / kirjutamisõigus

Seega tagastab ta kaks sellele kriteeriumile vastavat faili – fail1 ja fail2. Failidel ei pea olema täpset 766 luba ja neil võib olla ka täiendavaid õigusi, kuid neil peab olema vähemalt määratletud.

Leidke omaniku kirjutatavad failid

Kasutame nüüd nuppu “/” failide otsimiseks, mille saab kirjutada kas nende omanik või rühm või teised.

leida -perm / 222
.
./ fail2
./ fail3
./ fail1

Ülaltoodud otsib faile, mida saab kirjutada nende omanik või rühm.
Sellega saadakse failid, mida saab kirjutada kumbki, kuid mitte tingimata mõlemad. Failide vaatamiseks, kus mõlemal on kirjutatavad õigused, kasutage eesliidet -.

leida -perm -220

Väljund

./ fail2
./ fail1

Leidke kasutaja omanduses olevad failid

Otsige üles kõik Jackile kuuluvad failid

leid / kodukasutaja pesa

Väljund

/ kodu / tungraud
/home/jack/examples.desktop
/home/jack/.gnupg
/home/jack/.gnupg/private-keys-v1.d
/home/jack/ans.cgi

Leidke konkreetsed kasutaja omandis olevad failid

Otsige üles kõik Jackile kuuluvad tekstifailid

leidke / kodukasutaja jack -iname "* .txt"

Väljund

/home/jack/docs/file32.txt

Leidke ja loetlege failid ja kataloogid koos nende õigustega

leid-nimi "* .conf" | ls -l

Väljund

kokku 120
drwxr-xr-x 2 juurjuur 4096 31. detsember 13:19 backup2
drwxr-xr-x 2 juurjuur 4096 4. jaanuar 11:57 töölaud
drwxr-xr-x 2 juurjuur 4096 31. detsember 11:50 Dokumendid
drwxr-xr-x 2 juurjuur 4096 31. detsember 12:27 allalaadimine
-rw-r – r– 1 juurjuur 0. jaanuar 4 12:02 file22.doc
drwxr-xr-x 2 juurejuur 4096 4. jaanuar 12:14 fail23
-rw-r – r– 1 juurjuur 0. jaanuar 4 12:23 file23.txt

Leidke tulemused ja tegutsege nende järgi

Selles jaotises vaatleme, kuidas saate toimida failide puhul, mis vastavad leidmiskäskluses määratud mustrile.

Failide otsimine ja õiguste muutmine

Teatud tüüpi failide õiguste otsimine ja muutmine. Meie puhul töötame erinevate õigustega PHP-failidega, nagu allpool näidatud.

[e-posti aadress on kaitstud]: ~ / ver $ ls -la

kokku 8
drwxrwxr-x 2 tungraua tungraud 4096 3. jaanuar 14:11 .
drwxr-xr-x 8 tungraua tungraud 4096 3. jaanuar 14:05 ..
-rwxr-xr-x 1 tungraua pistikupesa 0. jaanuar 3 14:06 ans.php
-rw-rw-r– 1 tungraua tungraud 0. jaanuar 3 14:11 base.php
-rwxr-xr-x 1 tungraua pistikupesa 0. jaanuar 3 14:06 query.php
-rw-rw-r– 1 tungraua tungraud 0. jaanuar 3 14:11 qust.php
-rwxr-xr-x 1 tungraua pistikupesa 0. jaanuar 3 14:06 text.php
-rw-rw-r– 1 tungraua tungraud 0. jaanuar 3 14:11 vary.php

Otsime nüüd kõik PHP-failid (ülal) ja asendame nende õigused 755-ga

leida ver-nimi "* .php" -tüüp f -exec chmod 755 {};

Käsk otsib ver kataloogist PHP-faile ja seab nende loa 755-le (rwxr-xr-x)

Tulemused

[e-posti aadress on kaitstud]: ~ / ver $ ls -la
kokku 8
drwxrwxr-x 2 tungraua tungraud 4096 3. jaanuar 14:11 .
drwxr-xr-x 8 tungraua tungraud 4096 3. jaanuar 14:05 ..
-rwxr-xr-x 1 tungraua pistikupesa 0. jaanuar 3 14:06 ans.php
-rwxr-xr-x 1 tungraua pesa 0. jaanuar 3 14:11 base.php
-rwxr-xr-x 1 tungraua pistikupesa 0. jaanuar 3 14:06 query.php
-rwxr-xr-x 1 tungraua pistikupesa 0. jaanuar 3 14:11 qust.php
-rwxr-xr-x 1 tungraua pistikupesa 0. jaanuar 3 14:06 text.php
-rwxr-xr-x 1 tungraua pistikupesa 0. jaanuar 3 14:11 vary.php

Failide ja kataloogide õiguste otsimine ja muutmine

Leidke 644 õigustega faile ja muutke neid 655 õigustega

leidma. -tüüp f-perm 644 -exec chmod 655 {};

Võite otsida ka katalooge 644 õigustega ja asendada need 755-ga.

leidma. tüüpi d-perm 644

Väljund

./ dokumendid

Dokumentide kaustas on 644 luba

drwxrwxr-x 2 tungraua tungraud 4096 3. jaanuar 12:45 docs

755-ni seadmiseks jookseme

leidma. -tüüp d-perm 644 -exec chmod 755 {};

Nüüd saame uuesti kontrollida, mis täpselt 755 on

leidma. -tüüpi d-perm 755

Väljund
.
./ dokumendid

Ülevalt näeme juur- ja doc-kataloogides 755 õigusi.

Ls –la käsk annab järgmised üksikasjad

drwxr-xr-x 2 tungraua pesa 4096 3. jaanuar 12:45 docs

Failide või kataloogide otsimine ja kopeerimine

Konkreetse faili otsimine ja kopeerimine kataloogi

Allolev käsk leiab faili file22.txt ja kopeerib selle kataloogi ~ / tmp / images.

leidke -iname file22.txt -exec cp {} ~ / tmp / images;

Otsige ja kopeerige ühte tüüpi faile kataloogi

Failide, näiteks JPG-laiendiga piltide otsimiseks aktiivsest kataloogist ja nende kopeerimiseks muusse kohta nagu piltide kausta kasutage;

leidke -iname ‘* .jpg’ -exec cp {} ~ / tmp / images;

See otsib ja kopeerib kõik JPG-failid kausta ~ / tmp / images.

Leidke ja kopeerige üks fail paljudesse kataloogidesse

Üksiku leidmine ja kopeerimine mitmesse kataloogi.

leidke ~ / tmp / dir1 / ~ / tmp / dir2 / $ HOME / 3 / -maxdepth 0 -exec cp ~ / number / hci {};

See leiab faili hci ja kopeerib selle kolme kataloogi kataloogides / tmp / dir1 / / tmp / dir2 / ja $ HOME / 3 /

Failide otsimine ja teisaldamine teise kataloogi

Tuntud faili teisaldamine kataloogist teise. Faili universal.php teisaldamiseks;

leidke ~ / kaust / tüüpi f-nimi universaalne.php -exec mv {} ~ / numbriline /;

Otsige ja teisaldage teatud laiendiga faile teise kausta

leidke ~ / numbriline /-tüüpi f-nimi ‘* .php’ -exec mv {} ~ / kaust /;

Leidke kindlad failid ja liikuge konkreetsesse teise kausta

leid-tüüpi f-nimi uni *. * -exec mv {} ~ / unifiles /;

Käsk otsib kõiki faile, mille nimed algavad uni ja millel on laiendid. Seejärel teisaldab nad kataloogi / unifiles /

Failide otsimine ja teisaldamine vanuse põhjal

Otsige ja teisaldage kindlaksmääratud päevadest vanemad failid muusse kohta, näiteks arhiivi.

leid / tee / tüüpi f-nimi ‘* .pdf’ -aeg +20 -exec mv {} / backup1 /;

See otsib pdf-faile, mis on vanemad kui 20 päeva, ja teisaldab need backup1 kataloogi.

Failide ja kataloogide otsimine ja kustutamine

Käimasolevas kataloogis failide või kataloogide otsimise ja eemaldamise süntaks on

leidma. -tüüp f-nimi "kustutatav fail" -exec rm -f {}; ainult failide kustutamiseks või

leidma. -tüüpi d-nimi "dir-kustutada" -exec rm -rf {}; ainult kataloogide kustutamiseks

Ainult konkreetsete failide otsimine ja kustutamine

Tilga algavate failide otsimiseks ja kustutamiseks kasutage;

leidma. -tüüp f-nimi "til *" -täide rm {};

Til-ga alustavate kataloogide otsimiseks ja kustutamiseks

leidma. -tüüpi d-nimi "til *" -täide rm {};

Eemaldage nii failid kui ka kataloogid

leidma. -nimi "til *" -exec rm -rf {};

See eemaldab nii failid kui ka kataloogid, mis algavad tähtedega til.

Kustuta laiendi järgi

Allpool saate teada, kuidas leida ja kustutada kõik praeguses kataloogis olevad txt-failid. Asendage txt mõne muu laiendiga, näiteks bak, pdf või mõne muu eemaldatava laiendiga.

leidma. -tüüp f-nimi "* .txt" -exec rm -f {};

Juhul kui soovite, et süsteem paluks teil enne iga faili kustutamist kinnitada, lisage järgmine võimalus -i.

leidma. -tüüp f-nimi "* .txt" -exec rm -i {};

Väljund

rm: kas eemaldada tavaline tühi fail ‘./File22.txt’? y
rm: kas eemaldada tavaline tühi fail ‘./file22.txt’? y
rm: eemalda tavaline tühi fail ‘./file23.txt’?

Vaikimisi ei eemalda -rm katalooge ja rekursiivse eemaldamise tagamiseks peate kasutama suvandit -r. See tagab tühjade kataloogide ja faile sisaldavate kataloogide kustutamise. Valik -f sunnib eemaldama ja seda kasutatakse nii failide kui ka kataloogide jaoks.

Leidke ja kustutage faile, mis on vanemad kui n päeva

Otsige ja kustutage praegusest kataloogist vanemad kui 20 päeva vanad varufailid.

leidma. -tüüp f-nimi ‘* .bak’ -aeg +20 -exec rm {};

See kustutab kõik .bak failid, mis on vanemad kui 20 päeva.

Ainult kataloogide otsimine ja kustutamine

Kataloogi nimega dir22 kustutamiseks

leidma. -tüüp d-nimi dir22 -exec rm -rf {};

Veenduge, et vastaksite katalooginime väitele või kasutaksit -iname.

leidma. -tüüp d -iname Dir22 -exec rm -rf {};

Eemaldab nii Dir22 kui ka dir22

Enne kustutamist kinnitage valikuga -i.

leidma. -tüüp d -iname Dir22 -exec rm -rf -i {};

Väljund
rm: kas eemaldada kataloog ‘./ir22’? n
rm: kas eemaldada kataloog ‘./dir22’? y

Meie puhul tippisime n kataloogi Dir22 jaoks, mida ei kustutata, ja y, dir22 jaoks, mis nüüd eemaldatakse.

Tühjade failide otsimine ja eemaldamine

Tühjade failide leidmiseks ja nende automaatseks kustutamiseks võite kasutada mõnda järgmistest käskudest.

leidke ./-tüüpi f-suurus 0 -exec rm -f {};

või
leida ./-tüüpi f-suurus 0 | xargs rm -f
või
leidke ./-tüüpi f-suurus 0 – kustutage

Tühjade kataloogide otsimine ja eemaldamine

Tühjade kataloogide eemaldamiseks kasutame d-d.

leida ./-type d -empty -exec rmdir {};

Teine võimalus on kasutada eemaldamise asemel kustutamist.

leidke ./-type d -empty-Kustuta

Pange tähele, et süsteemi või kriitiliste failide kustutamine arvutist võib kahjustada opsüsteemi või rakendusi või viia teie oluliste andmete kadumiseni.

Juhuslike kustutuste vältimiseks on hea tava kasutada mitte juurkasutaja kontot. Samuti kontrollige, kas kustutate õiged failid, mis pole kasulikud, ja et teil oleks igaks juhuks varukoopia kõigist oma andmefailidest.

Mis järgmiseks?

Minge edasi ja proovige neid oma laboris või MITTE TOOTMISES keskkonnas. Vaadake, kas saate mõnda kasutada failisüsteemi puhastamise automatiseerimiseks Crontabi abil. Ja Linuxi valdamiseks vaadake seda veebikursus.

Sildid:

  • Linux

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map