on monia tapoja listata tiedostoja ja näyttää niistä tietoja Linux-järjestelmissä. Tässä viestissä tarkastellaan useita komentoja, jotka antavat tietoja tiedostoista ja tarjoaa vaihtoehtoja tiedostoluetteloiden mukauttamiseksi tarpeisiisi.
useimmat komennot luettelevat tiedostoja yksittäisissä hakemistoissa, kun taas toiset ulottuvat niin syvälle tiedostojärjestelmään kuin haluat katsoa.
ensisijainen komento tiedostojen luetteloinnissa on tietenkin LS. Tällä komennolla on kuitenkin laaja määrä vaihtoehtoja juuri niiden tiedostojen etsimiseen ja luettelointiin, jotka haluat nähdä. Plus, siellä on aina löytää auttaa hyvin erityisiä tiedostojen hakuja.
Tiedostojen listaaminen nimen mukaan
helpoin tapa listata tiedostot nimen mukaan on yksinkertaisesti LS-komennolla. Tiedostojen luettelointi nimen mukaan (aakkosnumeerinen järjestys) on loppujen lopuksi oletusarvo. Voit valita LS (ei yksityiskohtia) tai ls-l (paljon yksityiskohtia) määrittää näkymän.
$ ls | head -68pgs.pdfAesthetics_Thank_You.pdfalien.pdfAnnual_Meeting_Agenda-20190602.pdfbigfile.bz2bin$ ls -l | head -6-rw-rw-r-- 1 shs shs 10886 Mar 22 2019 8pgs.pdf-rw-rw-r-- 1 shs shs 284003 May 11 2019 Aesthetics_Thank_You.pdf-rw-rw-r-- 1 shs shs 38282 Jan 24 2019 alien.pdf-rw-rw-r-- 1 shs shs 97358 May 19 2019 Annual_Meeting_20190602.pdf-rw-rw-r-- 1 shs shs 18115234 Apr 16 17:36 bigfile.bz2drwxrwxr-x 4 shs shs 8052736 Jul 10 13:17 bin
piippaa LS: n ulostulo more-komentoon, jos haluat tarkastella listaustasi ruutukaava kerrallaan.
luetteloi tiedostot käänteisessä nimijärjestyksessä
Jos haluat kääntää tiedostojen luettelon nimen mukaan, lisää-R (Käänteinen) – valinta. Tämä on kuin kääntäisi normaalin listauksen ylösalaisin.
$ ls -r$ ls -lr
Listing files by file extension
LS-komento ei analysoi tiedostotyyppejä sisällön mukaan, vaan toimii tiedostonimien kanssa. On kuitenkin olemassa komento vaihtoehto, joka voi luetella tiedostoja laajennus. Jos lisäät-X-vaihtoehdon, ls lajittelee tiedostot nimen mukaan kussakin pääteluokassa. Esimerkiksi, se listaa Tiedostot ilman laajennuksia ensin (aakkosnumeerisessa järjestyksessä) ja sen jälkeen tiedostot, joilla on laajennuksia kuten .1, .bz2,.c ja niin edelleen.
listaamalla vain hakemistot
oletuksena LS-komento näyttää sekä tiedostot että hakemistot. Jos haluat listata vain hakemistoja, voit käyttää-d-vaihtoehtoa. Saat tällaisen listauksen:
$ ls -d */1/ backups/ modules/ projects/ templates/2/ html/ patches/ public/ videos/bin/ new/ private/ save/
listaavat tiedostot koon mukaan
Jos haluat listata tiedostot kokojärjestyksessä, Lisää-s-valinta. Huomaa, kuitenkin, että tämä ei itse näytä koot (yhdessä muiden tiedostojen tiedot) ellet myös lisätä-l (long listing) vaihtoehto. Kun luettelet tiedostoja koon mukaan, on yleensä hyödyllistä nähdä, että komento tekee mitä pyysit. Huomaa, että oletuksena on näyttää suurimmat tiedostot ensin. Lisää-R-vaihtoehto tämän kääntämiseksi (eli ls-lSr).
$ ls -lStotal 959492-rw-rw-r-- 1 shs shs 357679381 Sep 19 2019 sav-linux-free-9.tgz-rw-rw-r-- 1 shs shs 103270400 Apr 16 17:38 bigfile-rw-rw-r-- 1 shs shs 79117862 Oct 5 2019 Nessus-8.7.1-ubuntu1110_amd64.deb
luetteloi tiedostot omistajan mukaan
Jos haluat listata tiedostot omistajan mukaan (esim., jaetussa hakemistossa), voit siirtää komennon LS tulosteen lajittelua varten ja valita omistaja-sarakkeen lisäämällä-k3 lajittelua varten kolmanteen kenttään.
$ ls -l | sort -k3 | moretotal 56-rw-rw-r-- 1 dory shs 0 Aug 23 12:27 tasklistdrwx------ 2 gdm gdm 4096 Aug 21 17:12 tracker-extract-files.121srwxr-xr-x 1 root root 0 Aug 21 17:12 ntf_listenerc0c6b8b4567drwxr-xr-x 2 root root 4096 Aug 21 17:12 hsperfdata_root
^
|
itse asiassa voit lajitella millä tahansa kentällä tällä tavalla (esim.vuosi). Vain olla varovainen lisätä ” n ” – – k5n – jos lajittelet kenttään, joka on numeerinen tai lajittelet aakkosnumeerisessa järjestyksessä. Tämä lajittelutekniikka on hyödyllinen myös tiedostojen sisällön lajittelussa, ei vain tiedostojen luetteloinnissa.
listaamalla tiedostot iän mukaan
käytä-t – valitsinta listataksesi tiedostot ikäjärjestyksessä-kuinka uusia ne ovat. Lisää-r-vaihtoehto saadaksesi Viimeksi päivitetyt tiedostot, jotka näkyvät viimeisenä luettelossa. Käytän tätä peitenimeä näyttääkseni listan tiedostoista, joita olen viimeksi päivittänyt:
$ alias recent='ls -ltr | tail -8'
huomaa, että tiedostojen muutos-ja muutosajat ovat erilaiset. Vaihtoehdot-c (muutos) ja-t (muutos) eivät aina anna samoja tuloksia. Jos muutat tiedoston käyttöoikeuksia eikä mitään muuta,- c laittaa tiedostot LS-tulosteen yläreunaan, kun taas-t ei. Jos ero kiinnostaa, katso stat-komennon ulostuloa.
$ stat ckacct File: ckacct Size: 200 Blocks: 8 IO Block: 4096 regular fileDevice: 801h/2049d Inode: 829041 Links: 1Access: (0750/-rwxr-x---) Uid: ( 1000/ shs) Gid: ( 1000/ shs)Access: 2020-08-20 16:10:11.063015008 -0400Modify: 2020-08-17 07:26:34.579922297 -0400 <== content changesChange: 2020-08-24 09:36:51.699775940 -0400 <== content or permissions changes Birth: -
listaamalla tiedostoja ryhmittäin
lajittelemaan tiedostoja niihin liittyvien ryhmien mukaan, voit siirtää tulosteen pitkältä listalta lajittelu-komennolle ja käskeä sen lajittelemaan sarakkeessa 4.
$ ls -l | sort -k4
luetteloi tiedostot käyttöpäivämäärän mukaan
listataksesi tiedostot käyttöpäivämäärän mukaan (viimeksi käytetty ensin), käytä-ltu-valitsimia. ”U ”vahvistaa” by access date ” – listausjärjestyksen.
$ ls -ltutotal 959500-rwxr-x--- 1 shs shs 200 Aug 24 09:42 ckacct <== most recently used-rw-rw-r-- 1 shs shs 1335 Aug 23 17:45 lte
useiden tiedostojen listaaminen yhdelle riville
joskus tiivistetty tiedostolistaus on sopivampi käsillä olevaan tehtävään. LS-komennossa on jopa vaihtoehtoja siihen. Listataksesi tiedostot mahdollisimman harvoille riveille, voit käyttää –format=pilkkua erottaaksesi tiedostonimet pilkuilla kuten Tässä komennossa:
$ ls --format=comma1, 10, 11, 12, 124, 13, 14, 15, 16pgs-landscape.pdf, 16pgs.pdf, 17, 18, 19,192.168.0.4, 2, 20, 2018-12-23_OoS_2.pdf, 2018-12-23_OoS.pdf, 20190512_OoS.pdf,'2019_HOHO_application working.pdf' …
suosi valkoista tilaa? Käytä –format=poikki sen sijaan.
$ ls --format=across z*z zip zipfiles zipfiles1.bat zipfiles2.batzipfiles3.bat zipfiles4.bat zipfiles.bat zoom_amd64.deb zoomap.pdfzoom-mtg
lisäämällä syvyyttä hakuihin
vaikka ls yleensä listaa tiedostot yhdestä hakemistosta, voit sen sijaan valita tiedostojen rekursiivisen luettelon-R-valitsimilla, kaivellen hakemistojen koko syvyyden:
$ ls -R zzzzz | grep -v "^$"zzzzz:zzzzzzzzz/zzzz:zzzzzzzz/zzzz/zzz:zzzzzzz/zzzz/zzz/zz:zzzzzz/zzzz/zzz/zz/z:sleeping
vuorotellen voi käyttää hakukomentoa, jossa on rajoitettu tai rajoittamaton syvyysspesifikaatio. Tässä komennossa ohjeistamme find-komennon katsomaan vain kolmelle kansiotasolle:
$ find zzzzz -maxdepth 3zzzzzzzzzz/zzzzzzzzz/zzzz/zzzzzzzz/zzzz/zzz/zz
valitsemalla LS vs find
kun haluat listata tiedostoja, jotka täyttävät hyvin valikoivan vaatimuslistan, find-komento on luultavasti parempi työkalu käyttää kuin ls.
toisin kuin ls, Etsi-komento näyttää mahdollisimman syvältä, ellet rajoita sitä. Se on myös monia muita vaihtoehtoja ja An-exec komento, jonka avulla voit tehdä joitakin erityisiä toimia, kun löydät tiedostot etsit.
Wrap-Up
LS-komennossa on paljon vaihtoehtoja tiedostojen luettelointiin. Katso heitä. Saatat löytää jotain, josta pidät.