Onko luettelo vain hakemistoja rekursiivisesti Linuxissa?

Is List Only Directories Recursively Linux



Sana rekursiivinen viittaa siihen, että Linux- tai Unix -käyttöjärjestelmäkomennot käsittelevät kansioiden sisältöä, ja jos kansiossa on alikansioita ja asiakirjoja, ohje toimii edelleen kaikkien näiden asiakirjojen kanssa (rekursiivisesti). Voi olla mahdollista, että alihakemistossa on oma joukko tiedostoja ja kansioita (esimerkiksi suuria kansioita), jne. Ja niin edelleen. Käytät erilaisia ​​Linux -ohjeita rekursiivisesti kulkemaan jokaisen kansion läpi ennen kuin siirryt määritetyn kansion reunaan. Tällä tasolla Linux-ohjeet palaavat puun sammumiseen ja toistavat prosessin kaikille olemassa oleville alikansioille. Tässä opetusohjelmassa opit kaikki menetelmät luetteloida hakemistot rekursiivisesti.

Esimerkkejä yksinkertaisista luettelohakemistoista

Ensinnäkin sinun on tiedettävä, kuinka luetella kaikki Linux -järjestelmän hakemistot yksinkertaisen luettelokomennon avulla. Avaa komentoriviterminaali ja kokeile alla olevaa ls-komentoa vain hakemistojen luetteloimiseksi. Se ei ainoastaan ​​luettele hakemistoja, vaan niissä olevien alikansioiden ja tiedostojen kokonaismäärä. Tulos näyttää kansiot, joissa on tiedot omistajista, ryhmistä, luku-kirjoitusoikeuksista ja kansioiden luontipäivästä.







$ ls -l



Jos haluat luetella kaikki Linux -järjestelmäsi hakemistot ja tiedostot, sinun on käytettävä luettelokomennossa -la yksinkertaisen -l sijaan. Suorita siis päivitetty komento. Tulos näyttää kaikki tiedostot ja kansiot sekä niiden lisätiedot.



$ ls -la





Jos haluat yksinkertaisesti luetteloida hakemistot ilman lisätietoja, kokeile alla olevaa komentoa ja lippua -d.

$ ls –d * /



Voit myös käyttää samaa komentoa pienillä muutoksilla luetteloidaksesi kansiot ja niiden lisätiedot. Sinun tarvitsee vain lisätä -l -lippu tähän komentoon seuraavasti:

$ ls –l –d * /

Jos haluat tarkistaa vain tietyn kotihakemiston tiedostojen kokonaismäärän, kokeile alla olevaa komentoa kuorissa. Saat Linux -käyttöjärjestelmäsi tiedostojen kokonaismäärän.

$ ls –l | egrep –v ’^ d’

Esimerkki luettelointiluetteloista rekursiivisesti

Linux -järjestelmissä on saatavilla erilaisia ​​rekursiivisia komentoja, joita voidaan käyttää luetteloimaan hakemistot rekursiivisesti. Ymmärtääksesi kukin niistä erikseen, oletetaan, että Linux -hakemistossasi on viisi tiedostoa Dokumentit.

Listaa rekursiivisesti käyttämällä -lR -lippua

Ensimmäinen tapa tehdä se on käyttää -lR -lippua kyselyssäsi rekursiivisesti luetteloidaksesi kaikki Linux -järjestelmäsi hakemistot. Kun alla oleva luettelokomento on suoritettu, se luetteloi kaikki kansiot ja niiden alikansiot sekä niiden lisätiedot, kuten tulos näkyy.

$ ls -lR

Luetellaan vain rekursiivisesti kaikki tiedostot tai kansiot Linux -järjestelmän tietystä kansiosta tai hakemistosta. Tätä tarkoitusta varten lisää tietyn hakemiston sijaintipolku luetteloidaksesi sen rekursiivisesti. Haluamme rekursiivisesti luetteloida kaikki hakemiston tiedostot ja kansiot Dokumentit, jotka sijaitsevat kotihakemistossa alla päivitetyn komennon avulla. Tulos näyttää kaikki Tiedostot -kansion tiedostot ja kansiot sekä lisätiedot.

$ ls –lR / home / aqsayasin / Asiakirjat /

Listaa rekursiivisesti Etsi -komennolla

Tee itsellesi selväksi, että kaikki Linux -järjestelmät, esim. MacOS, Unix -tyyppinen käyttöjärjestelmä, eivät voi valita -R: ää hakemistojen luetteloimiseksi. Siinä tapauksessa on olemassa muita komentoja, jotka täyttävät tarpeemme, jotka ovat etsi ja tulosta -komento. Tässä komennossa annamme polun kansioon yhdessä -ls -komennon vipuvaikutuksen kanssa. Kun komennossa käytetään -ls, se näyttää myös lisätiedot tietyn hakemiston oleskelevista tiedostoista ja kansioista. Kokeile kuoren alla olevaa komentoa luetellaksesi rekursiivisesti kaikki hakemiston Dokumentit tiedostot ja kansiot.

$ find/home/aqsayasin/Asiakirjat/-print -ls

Nyt sinun on kokeiltava samaa kuoren ohjetta pienellä muutoksella. Vältämme -ls -lipun käyttämistä tässä komennossa lopettaaksemme tiedostoja koskevien lisätietojen näyttämisen. Suorita alla lueteltu kysely kuorella, niin saat näkyviin tuloksen.

$ find/home/aqsayasin/Asiakirjat/-print

Listaa rekursiivisesti käyttämällä -du -komentoa

Katsotaanpa toista esimerkkiä tiedostojen tai hakemistojen rekursiiviseksi luetteloimiseksi toisella uudella menetelmällä. Tällä kertaa käytämme -du -komentoa tavoitteemme saavuttamiseksi. Tämä komento sisältää -a -lipun. Lippujen lisäksi meidän on määritettävä myös hakemiston sijainti. Suoritamme alla olevat ohjeet päätelaitteen kuorissa rekursiivisesti luetteloimaan hakemiston Dokumentit kaikki kansiot tai tiedostot. Tulos näyttää sille viisi tietuetta, kuten alla on esitetty. Näet, että tämä komento näyttää myös kussakin tiedostossa olevien puremien määrän.

$ du –a / home / aqsayasin / Asiakirjat /

Listaa rekursiivisesti puukomennolla

Viimeisenä mutta ei vähäisimpänä, meillä on hyvin yksinkertainen ja helppokäyttöinen puukomentokirjamenetelmä tiedostojen tai kansioiden rekursiiviseksi luetteloimiseksi. Emme käytä toista lippua tässä komennossa toistaiseksi. Sinun on määritettävä hakemiston sijainti yhdessä avainsanapuun kanssa. Otetaan esimerkki siitä käyttämällä alla lueteltua komentoa. Tulos näyttää hakemiston Dokumentit puuhaarautuneen tyypin. Se näyttää 0 hakemistoa ja 5 tiedostoa lähdössä.

$ tree/home/aqsayasin/Asiakirjat/

Kokeillaan samaa puukomentoa eri sijainnilla. Tällä kertaa luetteloimme rekursiivisesti käyttäjän aqsayasin Koti -hakemiston kansiot. Tulos näyttää Home-kansion haarat, joissa on yhteensä 14 eri kansiota, alikansiota ja 5 tiedostoa.

$ tree/home/aqsayasin/

Johtopäätös

Olemme kokeilleet kaikkia rekursiivisia menetelmiä luetteloidaksesi hakemistot ja tiedostot rekursiivisesti, esim. -LR lippu, etsi ja tulosta, du ja puu