Windows Tips & News

Etsi tiedostoja, jotka sisältävät tiettyä tekstiä Linuxissa

Linuxissa on käyttämästäsi jakelusta riippumatta useita GUI-työkaluja, jotka mahdollistavat tiedostojen etsimisen. Monet nykyaikaiset tiedostonhallintaohjelmat tukevat tiedostojen hakua suoraan tiedostoluettelosta. On kuitenkin useita tilanteita, joissa sinun on käytettävä konsolia esimerkiksi SSH-istunnon aikana tai kun X-palvelin ei käynnisty. Näin voit löytää tiettyä tekstiä sisältävät tiedostot nopeasti päätelaitteen avulla.

Jos osaat käyttää graafista käyttöliittymää, tiedostojen etsiminen ei ole ongelma. Suosikki-XFCE-työpöytäympäristössäni Thunar-tiedostonhallinta mahdollistaa tiedostojen etsimisen kirjoittamalla tiedostonimen suoraan tiedostoluetteloon.

Mikään kokeilemani tiedostonhallinta ei kuitenkaan salli tiedoston sisällön etsimistä.

Voit ohittaa tämän rajoituksen työskennellessäsi GUI-istunnossa käyttämällä Сatfish-ohjelmaa. Сatfish on suosittu hakutyökalu. Se mahdollistaa tiedoston sisällön etsimisen. Sinun on napsautettava rataskuvaketta ja otettava vaihtoehto käyttöön Etsi tiedoston sisältö.

Päätteen osalta et kuitenkaan voi käyttää mitään graafista työkalua. Minusta Catfish ei myöskään ole hyödyllinen ja pidän klassisista konsolityökaluista sen sijaan. Tässä ovat käyttämäni menetelmät ja työkalut.

Tiettyä tekstiä sisältävien tiedostojen etsiminen Linuxissa, tee seuraava.

  1. Avaa suosikkipäätesovelluksesi. XFCE4-liitin on henkilökohtainen mieltymykseni.
  2. Kirjoita seuraava komento:
    find ./ -type f -exec grep -l "etsitettävä teksti" {} \;
  3. Tämä tuottaa luettelon tiedostoista, jotka sisältävät vaaditun tekstiosan.

Find-komento etsii tiedostoja alkaen nykyisestä hakemistosta "./". Sen sijaan voit määrittää haluamasi polun.

Vaihtoehto -tyyppi f käskee sitä etsimään vain tiedostoja ja sulkemaan pois hakemistoja. Voit myös asettaa sen etsimään vain tiettyä tiedostotyyppiä lisäämällä vaihtoehdon seuraavasti:
find ./ -type f -nimi "*.txt" -exec grep -l "etsitettävä teksti" {} \;

Katso seuraava kuvakaappaus:

The -päällikkö optio kutsuu grep-työkalua jokaiselle vastaavalle tiedostolle tarkistaakseen niiden sisällön. Jos teksti löytyy tiedostosta, sen nimi lisätään tulosteeseen, kiitos - l vaihtoehto.

Vaihtoehtoja

Yllä kuvatuille menetelmille on vaihtoehtoja. Ensinnäkin voit käyttää vain grep työkalu. Kokeile seuraavaa komentoa:

grep -iRl "löytettävä teksti" ./

  • -i on lyhenne sanoista ignore text.
  • -R tarkoittaa rekursiivista tiedostojen käsittelyä.
  • -l tarkoittaa "näytä tiedoston nimi, ei itse tulos".

Kuten näet, tämä menetelmä on vähemmän joustava kuin löytö komento.

Keskiyön komentaja

Toinen usein käyttämäni menetelmä on Midnight Commander (mc), konsolin tiedostonhallintasovellus. Toisin kuin find tai grep, mc ei ole oletuksena mukana kaikissa Linux-jakeluissa, joita olen kokeillut. Saatat joutua asentamaan sen itse.

Jos haluat etsiä tiettyä tekstiä sisältäviä tiedostoja Midnight Commander -sovelluksella, käynnistä sovellus ja paina seuraavaa näppäimistöä:
Alt + Siirtää + ?
Tämä avaa hakuikkunan.

Täytä "Tiedoston nimi:" -osio. Voit määrittää esimerkiksi "*.txt" etsiäksesi tekstiäsi vain tekstitiedostoista.

Täytä nyt Sisältö: laatikko. Kirjoita tiedostojen teksti ja paina Enter-näppäintä.

Se löytää kaikki kriteerit vastaavat tiedostot.

Se siitä.

Microsoft poisti hyödylliset tehtäväpalkin kontekstivalikot Windows 10 -versiosta 21337

Microsoft poisti hyödylliset tehtäväpalkin kontekstivalikot Windows 10 -versiosta 21337

SUOSITELTU: Napsauta tätä korjataksesi Windows-ongelmat ja optimoidaksesi järjestelmän suoritusky...

Lue lisää

Korjaus: Windows 8.1 -päivitys ei asennu, virheet 0x800f081f ja 0x80071a91

Korjaus: Windows 8.1 -päivitys ei asennu, virheet 0x800f081f ja 0x80071a91

5 vastaustaMicrosoft julkaisi äskettäin Windows 8.1 -päivityksen kaikille Windows 8.1 -käyttäjill...

Lue lisää

Nature HD#39 -teema Windows 8:lle

Tämä verkkosivusto käyttää evästeitä parantaakseen käyttökokemustasi, kun selaat sivustoa. Näistä...

Lue lisää