Maksutavat Abuse

Tiedostojen etsiminen sisällön perusteella Linuxissa

14.04.2023, 02:43

Tiedoston sisältö Linuxissa on tiedostoon tallennettua tietoa, jota voidaan lukea tai muokata erilaisilla apuohjelmilla ja komentorivillä. Usein sinun on etsittävä tiedostoja niiden perusteella, tässä on ohjeet, miten se tehdään.

Mikä on sisältö Linux-käyttöjärjestelmässä

Tiedostojen sisältö voi olla tekstiä tai binääritiedostoa riippuen siitä, minkä tyyppistä tietoa se tallentaa. Tekstitiedostot sisältävät merkkejä ja merkkijonoja, joita ihminen voi lukea. Binääritiedostot sisältävät binääritietoja, kuten suoritettavaa koodia, kuvia, video- ja äänitiedostoja. Tiedostojen sisältö voidaan näyttää päätelaitteessa cat- tai less-komennolla ja sitä voidaan muokata tekstieditoreilla, kuten vi, nano tai emacs.

Miksi hakua tarvitaan

Tiedostohakua sisällön perusteella tarvitaan Linuxissa, jotta voidaan nopeasti löytää tiedostot, jotka sisältävät tietyn tekstin, sanan, lauseen tai merkin. Se voi olla hyödyllistä konfiguraatiotiedostojen, lokitiedostojen ja muiden tiedostojen löytämiseksi suurista hakemistoista, joissa on monia alihakemistoja. Siitä voi olla hyötyä myös tutkittaessa tiedostojärjestelmää etsiessä tiedostoja, jotka sisältävät tietyn viruksen tai ei-toivotun koodin. Tehokkaalla ja joustavalla tiedostohauilla sisällön mukaan voit löytää nopeasti tarvitsemasi tiedostot ja työskennellä niiden kanssa kätevästi.

Komentosyntaksi

Voit etsiä tiedostoja sisällön perusteella Linuxissa grep-komennolla.

Komennon syntaksi:

grep [options] [template] [files]

Käyttöesimerkkejä:

  • Etsi kaikki tiedostot /home/user-kansiosta, jotka sisältävät merkkijonon "hello":
    grep -r "hello" /home/user
  • Etsi /etc-kansiosta ja sen alikansioista tiedostot, jotka sisältävät sanan "network":
    grep -R "network" /etc
  • Etsi /var/log-kansiosta tiedostot, jotka sisältävät viestin "error":
    grep -R "error" /var/log
  • Etsi tiedostot, joiden tiedostopääte on .txt ja jotka sisältävät merkkijonon "important" kansiosta /home/user:
    grep "important" /home/user/*.txt
  • Etsi /etc-kansiosta kohteita, jotka sisältävät sanan "password", ja tallenna tulos passwords.log-tiedostoon:
    grep -R "password" /etc > passwords.log

Grep-komennon tärkeimmät vaihtoehdot ovat

  • -i: jätä huomiotta merkkien oikeinkirjoitus hakujen yhteydessä
  • -n: tulostaa rivinumerot, jotka sisältävät halutut tiedot.
  • -c: tulostaa vain halutun tiedon sisältävien rivien lukumäärän.
  • -v: etsi rivit, jotka eivät sisällä määritettyjä tietoja.

Grep-komennon lisäksi voit käyttää find-komentoa etsiessäsi tietyn sisältöisiä tiedostoja tietyistä kansioista. Etsintä tällä komennolla on kuitenkin hitaampaa kuin grep-komennolla.