Ubuntu failide otsing: Käsud, tööriistad ja nipid tõhusaks otsimiseks | Tehniline juhend

目次

1. Sissejuhatus

Ubuntu on laialdaselt kasutatav Linuxi distributsioon ning igapäevase töö efektiivsuse tõstmiseks on oluline osata faile tõhusalt otsida.
Käesolevas artiklis selgitame algajatele ja kesktaseme kasutajatele arusaadavalt Ubuntu failiotsingukäske ja -tööriistu.
Käsitleme ka otsingukiiruse parandamise meetodeid ja veaparandust, nii et lugege kindlasti lõpuni.

年収訴求

2. Failiotsingu põhikäsud

Ubuntu pakub failide otsimiseks mitmeid põhikäske.
Selles jaotises käsitleme populaarsemaid käske, nagu “find” ja “locate”.

2.1 Mis on find käsk?

find käsk on äärmiselt võimas tööriist failide otsimiseks määratud kataloogist allapoole, määrates failinime või tingimused.

find käsu põhisüntaks

find [otsingu alguskataloog] [otsingutingimused]

Näide: Kodu kataloogist konkreetse failinime “example.txt” otsimisel

find ~/ -name "example.txt"

Näiteid find käsu valikutest

  • -name: Otsi failinime järgi (tundlik suurtähtede/väiketähtede suhtes)
  • -iname: Otsi failinime järgi (suurtähtede/väiketähtede suhtes mittetundlik)
  • -type: Määra failitüüp (d=kataloog, f=fail)
  • -size: Otsi failisuuruse järgi (nt +1M tähendab üle 1MB)

2.2 Mis on locate käsk?

locate käsku iseloomustab väga kiire otsingukiirus. Kuid otsingutulemused sõltuvad indekseeritud andmebaasist.

locate käsu põhisüntaks

locate [failinimi või osa teest]

Näide: Otsi faile, mille nimed sisaldavad “example”

locate example

locate käsu olulised märkused

Kuna locate kasutab andmebaasi, ei pruugi viimati lisatud failid otsingutulemustesse ilmuda. Sel juhul uuendage andmebaasi järgmise käsuga:

sudo updatedb

2.3 find ja locate kasutamine erinevates olukordades

  • find: Sobib paremini, kui soovite otsida detailsemate tingimustega.
  • locate: Sobib paremini, kui soovite kiirelt otsida.

3. find käsu üksikasjalik selgitus

find käsk on väga mitmekülgne ja paljude valikute valdamine võimaldab tõhusat otsingut.
Selles jaotises selgitame seda üksikasjalikult koos konkreetsete kasutusnäidetega.

3.1 Otsimine failinime järgi

Failinime järgi otsimiseks kasutage valikuid -name või -iname.

Näide: Kõigi “.txt” laiendiga failide otsimine

find ~/ -name "*.txt"

3.2 Otsimine failisuuruse järgi

Otsingutingimuseks saab määrata faili suuruse.

Näide: Otsi faile, mis on suuremad kui 1MB

find ~/ -size +1M

3.3 Otsimine muutmise aja järgi

Kasutades valikut -mtime, saate otsida faile, mida on muudetud määratud päevade jooksul.

Näide: Otsi faile, mida on uuendatud viimase 7 päeva jooksul

find ~/ -mtime -7

3.4 Teatud toimingute teostamine

Otsingutulemuste põhjal on võimalik ka toiminguid teostada.

Näide: Otsitud failide kustutamine

find ~/ -name "*.tmp" -exec rm -f {} ;

4. locate käsu kasutusvõimalused

locate käsk on lisaks lihtsale kasutamisele atraktiivne ka oma kiire toimimise poolest.
Selles jaotises tutvustatakse locate käsu kasulikke kasutusviise.

4.1 Otsimine tee osa järgi

Isegi kui failinimi pole täielikult teada, saab otsida tee osa määrates.

Näide: Kodu kataloogist “Documents”iga seotud failide otsimine

locate ~/Documents

4.2 Otsingutulemuste filtreerimine

Otsingutulemuste edasiseks kitsendamiseks kasutage koos grep’i.

Näide: Kuva ainult “.txt” laiendiga failid otsingutulemustest

locate example | grep ".txt"

 

5. Kooskasutamine grep käsuga

Lisaks failide otsimisele on failide sisu otsimiseks kasulik grep käsk.
Selles jaotises tutvustatakse grep käsu iseseisvat kasutamist ja selle kombineerimist find või locate käskudega täiustatud otsingute tegemiseks.

5.1 grep käsu põhitõed

grep käsk on tööriist, mis otsib failist määratud stringi sisaldavaid ridu.

grep käsu põhisüntaks

grep [valikud] "otsingustring" [fail]

Näide: Otsi rida, mis sisaldab stringi “Ubuntu” failist “example.txt”

grep "Ubuntu" example.txt

grep peamised valikud

  • -i: Suurtähtede/väiketähtede suhtes mittetundlik otsing.
  • -r: Rekursiivne otsing kataloogides.
  • -n: Kuva vastavuse leidnud rea number.

5.2 find käsu ja grep kombinatsioon

Saate kasutada find käsku konkreetsete failide otsimiseks ja seejärel grep’iga nende sisu uurimiseks.

Näide: Otsi “.log” laiendiga failidest stringi “error”

find ~/ -name "*.log" -exec grep "error" {} ;

5.3 locate käsu ja grep kombinatsioon

locate käsuga otsitud tulemusi saab grep’i abil kitsendada.

Näide: Otsi “.txt” faile, mis sisaldavad stringi “example”

locate "*.txt" | grep "example"

6. Failiotsing GUI tööriistadega

CLI-ga (käsurealiides) harjumata algajatele või intuitiivset kasutamist eelistavatele kasutajatele on GUI tööriistadega failiotsing mugav.
Selles jaotises selgitatakse Ubuntu standardfunktsioone ja kolmanda osapoole tööriistu.

6.1 Ubuntu standardne failiotsingu funktsioon

Ubuntu failihaldur (Nautilus) sisaldab sisseehitatud failiotsingu funktsiooni.

Otsimisjuhised

  1. Avage failihaldur.
  2. Valige kaust, millest soovite otsida.
  3. Sisestage märksõna paremas ülemises otsinguribal.

See meetod on lihtne ja kasulik piltide või dokumentide kiireks otsimiseks.

6.2 Kolmanda osapoole otsingutööriistad

Ubuntus on mitmeid võimsamaid otsingutööriistu. Allpool on mõned näited:

Catfish

Kerge GUI-põhine otsingutööriist, mis võimaldab faile kiirelt otsida.

  • Installimismeetod
  sudo apt install catfish
  • Kasutamine
    Käivitage Catfish ja sisestage märksõna otsinguribale, et näha tulemusi.

FSearch

Töölaua otsingutööriist, mis sarnaneb Windowsi “Everything”iga.

  • Installimismeetod
  sudo apt install fsearch
  • Omadused
  • Kiire otsing indekseerimise abil.
  • Lihtne ja kasutajasõbralik liides.

 

7. Nõuanded otsingukiiruse ja tõhususe parandamiseks

Failiotsingu kiiruse parandamiseks on vaja teha mõningaid kohandusi.
Selles jaotises selgitatakse konkreetseid meetodeid otsingutõhususe suurendamiseks.

7.1 Indeksite kasutamine

Indeksipõhiste otsingute, nagu locate käsu, kasutamine võimaldab suuri faile kiiresti otsida.
Andmebaasi regulaarne värskendamine tagab, et kajastatakse ka uusimad failiteave.

Näide: Andmebaasi värskendamine

sudo updatedb

7.2 Otsingu ulatuse piiramine

Otsingu ulatuse kitsendamine säästab aega.

  • Piira otsingut konkreetsetele kataloogidele.
  • Jäta välja mittevajalikud failivormingud.

Näide: PDF-failide väljajätmine kodukataloogist

find ~/ -type f ! -name "*.pdf"

7.3 Kiirendusvalikute kasutamine

Paljudel käskudel on otsingukiirust suurendavad valikud. Näiteks find käsu -maxdepth valiku abil saab piirata kataloogi sügavust.

Näide: Otsi ainult praegusest kataloogist ja ühest alamkataloogist

find ./ -maxdepth 1 -name "*.txt"

8. Veaotsing

Selgitame failiotsingu ebaõnnestumise põhjuseid ja lahendusi.

8.1 Kui otsingutulemusi ei kuvata

  • Põhjus 1: Failinimi on erinev.
  • Lahendus: Kasutage suurtähtede/väiketähtede suhtes mittetundlikku -iname valikut.
  • Põhjus 2: Fail on peidetud.
  • Lahendus: Lisage valik -name ".*", et otsida peidetud faile.

8.2 Lubade probleemid

Kui teatud kataloogidele puudub juurdepääs, ei pruugita otsingutulemusi kuvada.

  • Lahendus: Käivitage otsing sudo abil administraatori õigustega.
  sudo find / -name "example.txt"

8.3 locate ei näita värskeimat infot

Andmebaas võib olla aegunud.

  • Lahendus: Värskendage andmebaasi käsuga updatedb.
sudo updatedb

 

9. Kokkuvõte

Failiotsing Ubuntu’s parandab oluliselt töö efektiivsust.
Selles artiklis tutvustatud find, locate ja grep käskude ning GUI tööriistade õige kombineerimine aitab teil hõlpsalt ja tõhusalt leida soovitud faile.
Proovige kindlasti neid meetodeid praktikas.

See lõpetab artikli! Järgmine kord käsitleme täiustatud Linuxi operatsioone ja näpunäiteid Ubuntu failihalduse kohta. Püsige lainel!

KKK: Korduma Kippuvad Küsimused Ubuntu failiotsingu kohta

K1. Kuidas ma saan Ubuntus otsida ainult teatud laiendiga faile?

V1. Konkreetse laiendiga failide otsimiseks saate kasutada find käsku. Näiteks, et otsida oma kodukataloogist .txt faile, käivitage järgmine käsk:

find ~/ -name "*.txt"

K2. Miks locate käsk ei leia uusimaid faile?

V2. locate käsk kasutab andmebaasi kiire otsingu jaoks. Kuna seda andmebaasi ei värskendata automaatselt, ei pruugi see sisaldada uusimat failiteavet. Värskendage andmebaasi käsitsi järgmise käsuga:

sudo updatedb

K3. Miks kuvatakse failiotsingul veateade “Permission denied” (luba keelatud)?

V3. Mõnedel kataloogidel puuduvad tavakasutajale juurdepääsuõigused. Sel juhul saate probleemi lahendada, käivitades käsu administraatori õigustega, kasutades sudo.

sudo find / -name "example.txt"

K4. Mida peaksin tegema, kui GUI tööriist ei kuva otsingutulemusi?

V4. Kui GUI tööriist ei kuva tulemusi, kontrollige järgmist:

  • Veenduge, et otsingu ulatus on õige.
  • Veenduge, et failinimi on otsingul täpne (kaaluge osalist vasteotsingut).
  • Andmebaasi kasutavate tööriistade puhul veenduge, et indeks on ajakohane.

K5. Kuidas välistada find käsuga otsingust teatud kaustad?

V5. find käsu valiku -prune abil saate teatud kaustad otsingust välja jätta. Näide on järgmine:

find ~/ -path "~/exclude_folder" -prune -o -name "*.txt" -print

K6. Kuidas Ubuntus otsida mitte ainult failinimesid, vaid ka faili sisu?

V6. Faili sisu otsimiseks kasutage grep käsku. Näiteks, et otsida stringi “Ubuntu” failist example.txt, käivitage järgmine käsk:

grep "Ubuntu" example.txt

Mitme faili otsimiseks kasutage rekursiivset otsinguvalikut -r.

K7. Kumb on parem kasutada, locate või find?

V7. locate on kiire, kuid kuna see kasutab indekseid, ei pruugi uusimad failid otsingusse sattuda. Teisest küljest on find paindlik ja võimaldab detailset otsingut, kuid võtab veidi kauem aega. Kasutage vastavalt oma vajadustele.

  • Kiireks otsinguks: locate
  • Detailsete tingimustega otsinguks: find
侍エンジニア塾