Linux FIND -komento esimerkein
Tiedätkö kuinka monta tiedostoa on uudessa Linux -asennuksessa ? Jos käytät PopOS! Esimerkiksi Linux-jakelussa(Linux distribution) on yli 31 000 tiedostoa. Se on ennen kuin alat luoda asiakirjoja, tallentaa musiikkia, ladata PDF(PDFs) -tiedostoja tai järjestää kuvia.
Tästä johtuen oikean tiedoston tai kansion löytäminen Linuxissa(Linux) sitä vaatiessa on haaste. Tässä artikkelissa opit käyttämään Linuxin FIND(Linux FIND) - komentoa, ja annamme sinulle kaikki mahdolliset esimerkit.
Linux FIND -komennon syntaksi(Linux FIND Command Syntax)
Syntaksi viittaa siihen, kuinka sanat tai komennot kootaan. Aivan(Just) kuten tavallisesta lauseesta voi tulla hölynpölyä vain sekoittamalla sanoja, komennot voivat epäonnistua, jos niitä ei käytetä oikeassa syntaksissa.
etsi [polku] [ehdot] [toiminnot](find [path] [conditions] [actions])
Tässä on mitä se tarkoittaa:
find – käynnistää Find - apuohjelman Linuxissa(Linux)
polku(path ) – mistä etsiä
ehdot(conditions ) – argumentit, joita haluat käyttää haussa
toimet(actions ) – mitä haluat tehdä tuloksilla
Yksinkertainen esimerkki, jossa käytetään kaikkia kolmea, näyttää tältä:
löytö . -nimi tiedosto-näyte.rtf -tulostus(find . -name file-sample.rtf -print)
Kuten arvasit, tämä löytää tiedoston nimen file-sample.rtf .
Piste ( . ) -polku käskee etsimään nykyisestä hakemistosta ja sen sisältämistä hakemistoista.
Ehto -name käskee find saamaan tiedoston kyseisellä nimellä.
-print - toiminto käskee FIND näyttämään tulokset näytöllä.
Piste ja -print ovat oletusarvoja find-komennossa. Joten se tekee saman asian, jos et käytä niitä. Joten etsi -nimi file-sample.rtf(find -name file-sample.rtf ) antaa sinulle samat tulokset.
Linux FIND toisesta hakemistosta(Linux FIND In Another Directory)
Voit etsiä eri hakemistosta kuin se, jossa olet. Lisää vain(Just) hakemiston polku FIND jälkeen . Jos olet juurissa ja tiedät, että tiedosto on jossain home/user , käytät seuraavaa:
find home/user -name file-sample.rtf
Se on edelleen rekursiivinen haku, joten se käy läpi jokaisen käyttäjän(user) hakemiston .
Linux FIND Hae useista hakemistoista(Linux FIND Search Multiple Directories)
Jos haluat etsiä useista hakemistoista kerralla, luettele ne komennossa välilyönnillä erotettuna.
find /lib /var /bin -name file-sample.rtf
Linux FIND ilman rekursiota tai rajoittamalla rekursiota(Linux FIND with No Recursion or Limiting Recursion)
Jos käytit yllä olevaa FIND - komentoa juuritasolla, se katsoisi kaikki järjestelmän hakemistot läpi. Joten jos haluat pysyä vain nykyisessä hakemistossa, käytä -maxdepth - vaihtoehtoa. Numero -maxdepth jälkeen kertoo Etsi kuinka syvälle mennä ennen pysähtymistä.
-maxdepth 1:n(-maxdepth 1 ) käyttö tarkoittaa vain tätä hakemistoa.
find -name file-sample.rtf -maxdepth 1
-maxdepth 2(-maxdepth 2 ) tai sitä suuremman luvun käyttäminen tarkoittaa, että mennään niin monta tasoa syvemmälle.
etsi -maxdepth 5 -name file-sample.rtf(find -maxdepth 5 -name file-sample.rtf)
Linux FIND Wildcard Esimerkki(Linux FIND Wildcard Example)
FIND - komento käyttää tähteä ( * ) jokerimerkkinä. Käytä sitä missä tahansa nimen osassa, josta et ole varma. Sitä voidaan käyttää nimessä useammin kuin kerran. Jos tiedostotyyppiä ei ole osana tiedoston nimeä, tulokset sisältävät myös vastaavat hakemistot.
find home/user -name file*sample*
Linux FIND tyypin mukaan(Linux FIND by Type Example)
Jos haluat etsiä vain tiedostoa tai hakemistoa, käytä -type-vaihtoehtoa ja sopivaa kuvaajaa. Niitä on muutamia, mutta tiedostot ja hakemistot ovat yleisimpiä:
f – tiedosto
d – hakemisto
b – estää laite
c – merkkilaite
l – symbolinen linkki
s – pistorasia
find home/user -name file*sample* -type d
Esimerkki: Linux FIND, jossa kirjainkoolla ei ole merkitystä(Linux FIND Case Insensitive Example)
Toisin kuin Windows , Linux välittää siitä, onko kirjain iso vai pieni. Joten jos haluat sen etsivän sekä tiedostoa File-Sample.rtf(File-Sample.rtf) että file-sample.rtf, käytä -iname - vaihtoehtoa.
find home/user -iname File-Sample.rtf
Linux HAE useita tiedostoja Esimerkki(Linux FIND Several Files Example)
Oletetaan, että halusit löytää tiedoston .rtf- ja .html-versiot. Se voidaan tehdä yhdellä komennolla käyttämällä -o (tai) -operaattoria. Joissakin jakeluissa nimet on ehkä asetettava hakasulkeisiin, kuten ( -name file-sample.rtf -o -name file-sample.html ) .
find home/user -name file-sample.rtf -o -name file-sample.html
Linux ETSI tiedostoja, jotka eivät vastaa nimeä(Linux FIND Files That Don’t Match a Name)
Ehkä tiedät, että tiedostosta on .html - versio, mutta et jos muita. Voit suodattaa .html - version pois hausta käyttämällä -not - vaihtoehtoa .
find home/user -name file-sample* -not -name *.html
Linux FIND ilman virheitä(Linux FIND Without Error Results)
Huomaa löydössä ilman rekursiota, että se listasi kaikki hakemistot, joista se ei voinut etsiä, ja oikean tuloksen. Se on ärsyttävää. Lopetetaan se näyttämästä kaikkia niitä " Permission denied" -hakemistoja. Yhdistä se toiseen Linuxin päätekomentoon(Linux terminal command) , grep. Voit myös etsiä tiedostoja, joissa on tiettyjä sanoja, käyttämällä (find files with specific words in them)Etsi(Find) -komentoa grepillä .
find -maxdepth 5 -name file-sample.rtf 2>&1 | grep -v “Permission denied”
Puretaan 2>&1 .
2 – edustaa stderr :tä , joka on lyhenne sanoista standardivirhetulostus.
1 – edustaa stdoutia(stdout) , joka on lyhenne sanoista vakiolähtö
> – tarkoittaa vasemmalla olevan lähdön ohjaamista sen oikealle puolelle.
& – tarkoittaa koota yhteen.
Joten 2>&1 tarkoittaa, että otat vakiovirheet ja ohjaat ne uudelleen ja yhdistävät ne sitten vakiotulosteen kanssa yhdeksi ulostuloksi.
Katsotaan nyt | grep -v “Permission denied” .
| (kutsutaan putkiksi) – käskee Linuxia(Linux) syöttämään sen vasemmalla puolella olevan tulokset sen oikealla puolella olevaan. Se syötetään grep-komennolle.
grep – on tekstihakuapuohjelma.
-v – käskee grepiä etsimään kaikkea, mikä ei vastaa -v:n vasemmalla puolella olevaa tekstiä. Tässä tapauksessa se käskee grepille etsimään vain kaiken, joka ei sisällä tekstiä tai merkkijonoa " Lupa(Permission) estetty". Joten grep näyttää sinulle vain etsimäsi tulokset ja kaikki virheet, jotka eivät vastaa kohtaa " Lupa(Permission) estetty".
Linux FIND käyttöoikeusesimerkillä(Linux FIND by Permissions Example)
Jotta voit käyttää tätä hyvin, sinun on opittava Linuxin käyttöoikeudet(learn Linux permissions) .
Kaikilla esimerkkitiedostoilla on käyttöoikeudet 664, paitsi yhdellä, jonka käyttöoikeudet on 775. Käytä -perm - valintaa löytääksesi sen.
find Documents/ -name file-sample* -type f -perm 775
Linux FIND koon mukaan(Linux FIND by Size Example)
Tiedostojen etsiminen koon mukaan on kätevää, jotta nämä valtavat tiedostot täyttävät kiintolevysi. Käytä -size-vaihtoehtoa, haluttua kokoa ja jotakin seuraavista jälkiliitteistä. Jos päätettä ei käytetä, -size on oletuksena b . Jos haluat etsiä tietyn kokoisia tai suurempia tiedostoja, laita plusmerkki (+) koon eteen.
M - megatavua
G – gigatavua
k – kilotavuja
b – lohkot (512 tavua – oletus)
c - tavua
w – sanat (kaksi tavua yhdessä)
find -size +500k
Linux FIND omistajalta(Linux FIND by Owner)
On kaksi tapaa etsiä tiedostoja omistajan mukaan. Toinen on omistajan käyttäjänimen ja toinen käyttäjäryhmän mukaan. Voit etsiä käyttäjänimen mukaan käyttämällä -user - vaihtoehtoa ja sen jälkeen käyttäjänimeä. Voit etsiä käyttäjäryhmän mukaan käyttämällä -group -komentoa ja ryhmän nimeä.
Find -user groupname tai find -user username
Linux FIND Files viimeksi muokatun esimerkin mukaan(Linux FIND Files by Last Modified Example)
Jos haluat etsiä tiedostoja, joita on muokattu tai muokattu viimeisen X päivän aikana, käytä -mtime ja numero. Miinusmerkin ( – ) lisääminen numeron eteen havaitsee, että kaikki on muuttunut niin monta päivää aiemmin. Plusmerkki ( + ) tarkoittaa, että monta päivää ennen tätä.
find -name “file-sample*” -mtime +5 (greater than 5 days ago)
find -name “file-sample*” -mtime -5 (less than 5 days ago)
Hae viimeksi muokattu minuutteina käyttämällä vaihtoehtoa -mmin ja sen jälkeen minuuttien lukumäärää. Käytä + ja – kuten yllä.
find -name “file-sample*” -mmin -5
find -name “file-sample*” -mmin +5
Linux FIND-tiedostot viimeksi käytettyjen aika -esimerkkien mukaan(Linux FIND Files by Last Accessed TIme Example)
Vaihtoehto, jota käytetään tiedostojen etsimiseen sen perusteella, milloin ne viimeksi avattiin, on -atime päiviä ja -amin minuutteja. Seuraa sitä päivien tai minuuttien lukumäärällä palataksesi taaksepäin ja käytä +- ja –-merkkejä suurempina kuin ja pienempinä kuin.
find -name “file-sample*” -atime -5
find -name “file-sample* -amin -5
Yhdistä FIND muihin Linux-komentoihin(Combine FIND with Other Linux Commands)
Yllä on yksi esimerkki find-komennon käyttämisestä grep-komennon kanssa, ja voit käyttää sitä monien muiden kanssa. Voit nähdä, että haku- ja muiden komentojen käyttö voi olla erittäin tehokasta ja valtavasti aikaa säästävä. Kuvittele(Imagine) , että sinun on poistettava joukko tietyn tyyppistä tiedostoa. Tiedostonhallinnassa etsimisen sijaan luo vain oikea komento, ja se tapahtuu sekunneissa. Kuinka käytät nyt hakukomentoa?
Related posts
Muunna kuvat muotojen välillä Ubuntun komentorivin kautta
Miksi "vähemmän" komento on parempi kuin "enemmän" UNIXissa ja Linuxissa
Käytä Linuxin 'dd'-komentoa yksinkertaisella käyttöliittymällä
Etsi ja vaihda isäntänimesi Ubuntussa
Chown Command Linuxissa: kuinka sitä käytetään
Mitä inodit ovat Linuxissa ja miten niitä käytetään?
Kuinka navigoida ja käyttää Linuxin hakemistorakennetta
Kuinka asentaa Linux Distro Chromebookiisi
7 parasta ilmaista virustorjuntaohjelmaa Linuxille
Kaikkien aikojen 20 parasta Linux-sovellusta
5 parasta Linux-peliä
Päätetemppuja: Käytä päätettä herätyskellona
Määritä Ubuntu ei himmentämään tai sammuttamaan passiivinen näyttö
5 hyvää syytä luopua Windowsista Linuxille
Linux-tiedostojen käyttöoikeudet - mikä on Chmod 777 ja kuinka sitä käytetään
5 parasta Linux-distroa, joita sinun pitäisi käyttää
Lisää pikakuvakkeet hiiren kakkospainikkeella olevaan kontekstivalikkoon Ubuntussa
Asenna Adobe Digital Editions Ubuntu Linuxiin
Linux-sovellusten asentaminen ja käyttäminen Chromebookissa
Luo mukautettu Live Linux Distro Linux Live Kitin avulla