3 načini iskanja datoteke v Linuxu

Kazalo:

3 načini iskanja datoteke v Linuxu
3 načini iskanja datoteke v Linuxu

Video: 3 načini iskanja datoteke v Linuxu

Video: 3 načini iskanja datoteke v Linuxu
Video: Как штукатурить откосы на окнах СВОИМИ РУКАМИ 2024, Maj
Anonim

Iskanje datoteke v sistemu Linux je lahko težavno, če ne veste, kako. Najboljši način za iskanje datotek je uporaba več različnih terminalskih ukazov. Obvladovanje teh ukazov vam lahko daje popoln nadzor nad datotekami in so veliko močnejše od preprostih iskalnih funkcij v drugih operacijskih sistemih.

Koraki

Metoda 1 od 3: Uporaba "locate"

690519 10 1
690519 10 1

Korak 1. Namestite datoteko

poišči funkcionalnost.

Ukaz locate na splošno deluje veliko hitreje kot find, ker deluje iz baze podatkov vaše datotečne strukture. Vse distribucije Linuxa nimajo nameščene funkcije iskanja, zato vnesite naslednje ukaze, da jih poskusite namestiti:

  • Vnesite sudo apt-get update in pritisnite ↵ Enter.
  • Namestite ga lahko v Debian in Ubuntu tako: Vnesite sudo apt-get install mlocate in pritisnite ↵ Enter. Če je lokalizacija že nameščena, boste videli, da je sporočilo mlocate že najnovejša različica.
  • V Arch Linuxu uporabite upravitelja paketov pacman: pacman -S mlocate
  • Za Gentoo uporabite emerge: emerge mlocate
690519 11 1
690519 11 1

Korak 2. Posodobite svoj

poišči zbirko podatkov.

Ukaz locate ne bo mogel najti ničesar, dokler njegova zbirka podatkov ne bo zgrajena in posodobljena. To se zgodi samodejno vsak dan, lahko pa ga tudi ročno posodobite. To morate storiti, če želite takoj začeti uporabljati lokacijo.

Vnesite sudo updatedb in pritisnite ↵ Enter

690519 12 1
690519 12 1

Korak 3. Uporabite

poišči za preprosto iskanje.

Ukaz locate je hiter, vendar nima toliko možnosti kot ukaz find. Osnovno iskanje datotek lahko izvedete na enak način kot ukaz find.

poišči -i "*.jpg"

  • Ta ukaz bo v celotnem sistemu poiskal datoteke s pripono.jpg. Nadomestni znak * deluje enako kot z ukazom find.
  • Tako kot ukaz find, -i prezre velike črke vaše poizvedbe.
690519 13 1
690519 13 1

Korak 4. Omejite rezultate iskanja

Če vaša iskanja vračajo preveč rezultatov za obdelavo, jih lahko zmanjšate z možnostjo -n, ki ji sledi število rezultatov, ki jih želite prikazati.

poišči -n 20 -i "*.jpg"

  • Prikazanih bo le prvih 20 rezultatov, ki ustrezajo poizvedbi.
  • Uporabite lahko tudi | pipe za pošiljanje rezultatov na manj za enostavno drsenje.

Metoda 2 od 3: Uporaba "najdi"

690519 1 1
690519 1 1

Korak 1. Poiščite datoteko po imenu datoteke

To je najosnovnejše iskanje, ki ga lahko izvedete z ukazom find. Spodnji ukaz bo iskal poizvedbo v trenutnem imeniku in vseh podimenikih.

Najdi -ime "ime datoteke"

Uporaba -iname namesto -name prezre velike in male črke vaše poizvedbe. Ukaz -name razlikuje velike in male črke

690519 2 1
690519 2 1

Korak 2. Nastavite iskanje v korenskem imeniku

Če želite iskati po celotnem sistemu, lahko poizvedbi dodate modifikator /. To bo poiskalo iskanje po vseh imenikih, ki se začnejo od korenskega imenika.

Najdi / -ime "ime datoteke"

  • Iskanje lahko začnete v določenem imeniku tako, da datoteko /zamenjate s potjo imenika, na primer /home /pat.
  • Uporabite lahko a. namesto / za vsiljevanje iskanja samo v trenutnem imeniku in podimenikih.
690519 3 1
690519 3 1

Korak 3. Uporabite nadomestni znak

* za iskanje vsega, kar se ujema z delom poizvedbe.

Nadomestni znak * je lahko uporaben za iskanje nečesa, če ne veste celotnega imena ali če želite najti vse z določeno razširitvijo.

find /home /pat -iname "*.conf"

  • To bo vrnilo vse datoteke.conf v Patovi uporabniški mapi (in podimenikih).
  • Z njim lahko poiščete tudi vse, kar ustreza delu imena datoteke. Če imate na primer veliko dokumentov, povezanih z wikiHow, jih lahko vse najdete tako, da vnesete »*wiki*«.
690519 4 1
690519 4 1

Korak 4. Olajšajte upravljanje rezultatov iskanja

Če dobite veliko rezultatov iskanja, jih je težko pregledati. Uporabite | znak in rezultate iskanja pošlje v program za filtriranje "manj". To vam lahko olajša pomikanje in filtriranje rezultatov.

find /home /pat -iname "*.conf" | manj

690519 5 1
690519 5 1

Korak 5. Poiščite posebne vrste rezultatov

Z modifikatorji lahko vrnete samo določene vrste rezultatov. Z desnim modifikatorjem lahko iščete običajne datoteke (f), imenike (d), simbolne povezave (l), naprave z znaki (c) in blokirate naprave (b).

Najdi / -vrsti f -ime "ime datoteke"

690519 6 1
690519 6 1

Korak 6. Filtrirajte rezultate iskanja po velikosti

Če imate veliko datotek s podobnimi imeni, vendar poznate velikost, ki jo iščete, lahko naše rezultate filtrirate po velikosti.

find / -size +50M -name "ime datoteke"

  • To bo vrnilo rezultate, ki so 50 megabajtov ali več. Z + ali - lahko iščete večje ali manjše velikosti. Če izpustite + ali -, bodo datoteke poiskale točno določeno velikost.
  • Filtrirate lahko po bajtih (c), kilobajtih (k), megabajtih (M), gigabajtih (G) ali 512-bajtnih blokih (b). Upoštevajte, da zastavica velikosti razlikuje velike in male črke.
690519 7 1
690519 7 1

Korak 7. Z logičnimi operaterji združite iskalne filtre

Operaterja -and, -or in -not lahko uporabite za združevanje različnih vrst iskanj v eno.

poišči /potovalne fotografije -tip f -velikost +200k -ne -ime "" 2015*"

Ukaz bo v imeniku "travelphotos" poiskal datoteke, ki so velike več kot 200 kilobajtov, vendar nimajo "2015" nikjer v imenu datoteke

690519 8 1
690519 8 1

Korak 8. Poiščite datoteke po lastniku ali dovoljenjih

Če poskušate najti določeno datoteko v lasti uporabnika ali datoteke z določenimi dovoljenji, lahko iskanje omejite.

find / -user pat -iname "ime datoteke" find / -groups users -iname "ime datoteke" find / -perm 777 -iname "ime datoteke"

Zgornji primeri bodo iskali poizvedbo pri določenih uporabnikih, skupinah ali dovoljenjih. Poizvedbo o imenu datoteke lahko tudi izpustite, če želite vrniti vse datoteke, ki se ujemajo s to vrsto. Na primer, find / -perm 777 bo vrnil vse datoteke z dovoljenji 777 (brez omejitev)

690519 9 1
690519 9 1

Korak 9. Združite ukaze za izvajanje dejanj, ko najdete datoteke

Ukaz find lahko združite z drugimi ukazi, tako da jih lahko izvedete v datotekah, ki jih vrne poizvedba. Ukaz find in drugi ukaz ločite z zastavico -exec, nato pa vrstico končajte z {};

najti. -vrsta f -perm 777 -exec chmod 755 {};

S tem boste v trenutnem imeniku (in vseh podimenikih) iskali datoteke, ki imajo 777 dovoljenj. Nato bo z ukazom chmod dovoljenja spremenil v 755

Metoda 3 od 3: Iskanje besedila v datotekah

690519 14 1
690519 14 1

Korak 1. Uporabite

grep ukaz za iskanje nizov besedila v datotekah.

Če iščete datoteko, ki vsebuje določeno frazo ali niz znakov, lahko uporabite ukaz grep. Osnovni ukaz grep je oblikovan na naslednji način:

grep -r -i "iskalna poizvedba"/pot/do/imenika/

  • -R nastavi iskanje na "rekurzivno", zato bo iskal v trenutnem imeniku in vseh podimenikih katero koli datoteko, ki vsebuje niz poizvedbe.
  • -I označuje, da poizvedba ne razlikuje med velikimi in malimi črkami. Če želite iskanje prisiliti, da upoštevate velike in male črke, izpustite operator -i.
690519 15 1
690519 15 1

Korak 2. Izrežite dodatno besedilo

Ko izvedete grep iskanje, kot je opisano zgoraj, boste skupaj z besedilom videli ime datoteke z označeno ujemajočo se poizvedbo. Ustrezno besedilo lahko skrijete in prikažete imena datotek in poti, tako da vključite naslednje:

grep -r -i "iskalna poizvedba"/pot/do/imenika/| cut -d: -f1

690519 16 1
690519 16 1

Korak 3. Skrij sporočila o napakah

Ukaz grep bo vrnil napako, ko bo poskušal dostopati do map brez pravilnih dovoljenj ali naletel na prazne mape. Sporočila o napakah lahko pošljete na /dev /null, ki jih skrije pred izhodom.

grep -r -i "iskalna poizvedba"/pot/do/imenika/2>/dev/null

Priporočena: