Vaikka Linux -päätelaite on monimutkaiselta näyttävä tekstiliitäntä, se on itse asiassa erittäin joustava, helppokäyttöinen ja varsin hyödyllinen työkalu. Komennot voidaan helposti kopioida online -lähteistä ja liittää päätelaitteeseen eri toimintojen suorittamiseksi. Komentoja on tonnia, mutta tämä viesti keskittyy etsimiskomentoon.
Etsi-komentoa käytetään järjestelmän tiedostojen ja kansioiden etsimiseen, suodattamiseen tai etsimiseen käyttäjän määrittämien ehtojen mukaan ja useiden toimintojen suorittamiseen.
Keskustellaan yksityiskohtaisesti etsimiskomennon, sen syntaksin ja tämän komennon suorittamien eri toimintojen käytöstä.
Etsi komennon syntaksi Linuxissa
Etsi -komennon syntaksi on esitetty alla:
löytö [polku] [vaihtoehtoja] [ilmaisu]
Find -komennolla on kolme ominaisuutta:
- [polku]: Se määrittää hakemiston, josta haku aloitetaan.
- [vaihtoehdot]: Se määrittää suodatuskriteerit esim. hakee tiedostoa/kansiota nimen, käyttöoikeuden, ajan tai päivämäärän perusteella.
- [lauseke]: Se määrittää, mitä toimintoja tiedoston kanssa suoritetaan.
Kaikki yllä olevat määritteet ovat valinnaisia, koska niitä voidaan käyttää vaatimuksen mukaisesti.
Esittelyä varten olen luonut erilaisia hakemistoja ja joitain tekstitiedostoja, katso alla oleva kuva:
Tiedoston etsiminen nimen perusteella
Jos haluat etsiä tiedostoa nimellä, käytä alla olevaa komentoa:
$löytö.-nimiMyTextFile1.txt
Edellä olevan komennon etsimisen jälkeinen piste osoittaa nykyisen hakemiston.
Jos et muista tarkkaa tiedostonimeä, hakua voidaan tarkentaa ja tehdä siitä ero kirjainkoolla käyttämällä nimellä -iname:
$löytö.-inamemytextfile1.txt
Tiedoston etsiminen tyypin mukaan
Jos haluat löytää tiedoston tyypin mukaan, käytä -type -vaihtoehtoa kirjaimilla, jotka tunnetaan myös nimellä descriptors, kuten f tiedostoille, d hakemistolle, l symboliselle linkille ja s liittimille.
Voit etsiä kaikista hakemistoista seuraavasti:
$löytö.-tyyppid
Jos haluat etsiä tiedostoja, käytä:
$löytö.-tyyppif
Tiedoston etsiminen tiedostopäätteen avulla
Jos haluat etsiä tiedostoa kuvion, esim. Tiedostopääte, mukaan lukien esimerkiksi kaikkien .txt -tiedostojen näyttäminen, käytä seuraavaa komentoa:
$löytö.-nimi *.txt
Kaikki tiedostot, joissa on .txt, näytetään vastaavien hakemistojen kanssa.
Tiedoston etsiminen ja poistaminen
Jos haluat etsiä ja poistaa tiedoston, käytä alla olevaa komentoa:
$löytö.-inamemytextfile1.txt-esim rm {};
Yllä oleva komento etsii ensin tiedoston ja poistaa sen. Kuva osoittaa, että MyTextFile1 on poistettu.
Voit poistaa kaikki tiedostot, joiden tunniste on .txt, käyttämällä oheista komentoa:
$löytö.-nimi *.txt-poistaa
Tiedoston etsiminen koon mukaan
Etsi -komento voi myös etsiä tiedostoa koon mukaan. Käytä yksinkertaisesti -size -vaihtoehtoa ja sen kuvauksia, kuten b 512 Kb: n lohkoille, c tavuille, k kilotaville, M ja G megatavuille ja Gigabyteille:
$löytö.-tyyppif-koko -1024c
Edellä mainittu komento etsii kaikkia tiedostoja, joiden koko on alle 1024 tavua. Hakua voidaan tarkentaa edelleen, esimerkiksi jos haluamme löytää kaikki alle 1 Mt: n tiedostot, käytämme alla olevaa komentoa:
$löytö.-tyyppif-koko1 milj
Käytä alla olevia komentoja kaikille tiedostoille, jotka ovat suurempia kuin 1 Mt:
$löytö.-tyyppif-koko+1 milj
Kokoalue voidaan myös määrittää käyttämällä oheista komentoa:
$löytö. -tyyppif-koko+1 milj-koko10MTiedostojen etsiminen luvalla
Jos haluat etsiä tiedostoa luvan perusteella, käytämme -perm -vaihtoehtoa ja sitten käyttökoodia alla kuvatulla tavalla:
$löytö.-permanentti 664
Etsi teksti tekstitiedostoista
Jos haluat löytää tekstiä useista tekstitiedostoista järjestelmässäsi, käytä alla olevaa komentoa:
$löytö.-tyyppif-nimi *.txt-esim pito'Hei'{};
Komento etsii Hello -sanaa tekstitiedostoista. Tulos on tekstijonoja Hello -tekstiä sisältävistä tekstitiedostoista.
Tiedoston etsiminen muutospäivämäärän ja -ajan mukaan
Jos haluat käyttää tiedostoa sen viimeisellä muokkauksella, käytä alla olevaa komentoa:
$löytö.-tyyppif-iname *.txt-lämmin+10
Yllä oleva komento etsii viimeksi muokattua tiedostoa neljä minuuttia sitten, ja m tarkoittaa muutosta.
$löytö. -tyyppif-iname *.txt-olen sisällä -10
Yllä oleva komento etsii tiedostoa, jota viimeksi käytettiin 4 minuuttia sitten, ja a in amin tarkoittaa pääsyä. Jos haluat käyttää tiedostoa, joka on muutettu neljä päivää sitten, käytä -mtime +4 mmin +4 sijaan.
Johtopäätös
Etsi -komento Linuxissa on erittäin hyödyllinen komento, jonka avulla voit etsiä tiedostoa tai hakemistoa eri kriteereillä ja jopa muokata tiedostoja päätelaitteesta. Tässä oppaassa havaitsimme find -komennon syntaksin Linuxissa ja opimme käyttämään find -komentoa eri toimintojen suorittamiseen.