Ls

Linux.fista
Versio hetkellä 25. lokakuuta 2008 kello 00.33 – tehnyt Pb (keskustelu | muokkaukset) (esimerkkejä paremmin, pitkän muodon selitys, valitsinlista)
Siirry navigaatioon Siirry hakuun

Ls on komentorivikomento, jolla listataan hakemiston sisältämät tiedostot.

Komento dir on sama kuin ls -Cb ja vdir on sama kuin ls -lb.

Käyttö

Listaa hakemiston sisältämät tiedostot (pelkät tiedostonimet)

ls

Listaa nykyisen hakemiston kaikki tiedostot, jotka alkavat kirjaimilla "tied"

ls tied*

Listaa kaikki tiedostot (myöskin piilotiedostot)

ls -a

Listaa kaikki lukuunottamatta piilotiedostoja "." ja ".." (.=nykyinen hakemisto, ..=ylähakemisto)

ls -A

Listaa tiedostokoot

ls -s

Näyttää tiedostokoot helpossa muodossa käyttäen k-, M-, G- ja T-etuliitteitä (voidaan käyttää myös valitsimen -l kanssa)

ls -hs

Listaa alihakemistot rekursiivisesti, ts näyttää kaikkien alihakemistojen ja niiden alihakemistojen sisällöt

ls -R

Listaa hp-alkuiset tiedostot näyttämättä mahdollisten tällä nimellä alkavien alihakemistojen sisältöä

ls -d hp*

Listaa tiedostot koon mukaisessa järjestyksessä. Hakemistoista ei näytetä niiden sisällön kokoa, vaan vain itse hakemistotiedoston koko. Hakemistojen sisällön koon voi halutessaan laskea komennolla du.

ls -S

Pitkä tulostusmuoto

Listaa hakemiston tiedostot pitkässä muodossa

ls -l

jolloin tulos voisi näyttää vaikkapa seuraavalta:

yhteensä 4
-rw-r--r-- 1 root root  774 18 sep  2007 inputrc
-rw-r--r-- 1 root root   40 26 okt  2007 issue
lrwxrwxrwx 1 root root   10 24 okt 18.32 psaux -> misc/psaux
drwxr-xr-x 2 root root    0 24 okt 18.32 pts

Ensimmäisellä rivillä näytetään listattavien tiedostojen kokonaismäärä.

Muiden rivien ensimmäinen merkki määrittää tiedostotyypin. - tarkoittaa tavallista tiedostoa, d hakemistoa, l symbolista linkkiä, p nimettyä putkea, s socketia, b lohkolaitetta (engl. block device, tietyn merkkilohkon kerrallaan lukeva laitetiedosto) ja c merkkilaitetta (engl. character device, yksittäisiä merkkejä lukeva laitetiedosto).

Sitä seuraavat merkit kertovat tiedoston oikeudet. Merkit 1-3 luettelevat tiedoston omistavan käyttäjän oikeudet, 4-6 omistajaryhmän oikeudet ja 7-9 ulkopuolisten oikeudet. r tarkoittaa lukuoikeutta, w kirjoitusoikeutta ja x suoritusoikeutta. Jos tiedoston setuid-bitti on päällä, näkyy kentässä 3 S-kirjain. Jos setgid-bitti on päällä, näkyy S-kirjain kentässä 6. Mikäli näissä kentissä muuten olisi x-kirjain, näkyy s-kirjain pienenä. Jos tiedostolle on asetettu sticky bit (tahmabitti), näkyy listauksessa vielä kymmenes kenttä, jossa on iso T-kirjain.

Oikeuksien jälkeen näkyvä numero ilmaisee tiedostoon osoittavien kovien linkkien määrän. Hakemistoilla niitä on aina vähintään kaksi, toinen kova linkki on hakemiston sisältämä ..-tiedosto.

Tämän jälkeen näkyvät tiedoston omistava käyttäjä sekä omistajaryhmä. Jos UID- ja GID-numeroita vastaavia käyttäjiä tai ryhmiä ei löydy järjestelmästä, näytetään nimen sijaan UID- tai GID-numero.

Tämän jälkeen näkyy tiedoston koko lohkoina. Koon saa näkymään ihmisystävällisemmässä muodossa valitsimella -h, eli esimerkiksi ls -lh.

Seuraavaksi näkyy tiedoston muokkausajankohta eli mtime. Ensimmäisenä päivä, sitten kuukausi ja lopuksi kellonaika tai vuosi riippuen siitä, onko tiedostoa muokattu kyseisenä vuonna.

Viimeisenä näkyy tiedostonnimi ja ->-merkkien jälkeen symbolisen linkin kohde, jos tiedosto on symbolinen linkki.

Värit

Näytetään tiedostonnimet eri väreillä riippuen tiedoston tyypistä ja oikeuksista:

ls --color=auto

Yleensä tämä on valmiiksi asetettu ls:n aliakseksi. Color-valitsin tottelee auton ohella myös määreitä never ja always. Always eroaa autosta siinä, että tulostukseen lisätään värikoodit myös siinä tapauksessa, ettei tulostusta ohjata konsoliin (näytölle), vaan esimerkiksi putkitetaan toiselle ohjelmalle, joka ei välttämättä värikoodeja ymmärrä (useimmissa järjestelmissä esimerkiksi less).

Käytettävien värikoodien asettamiseen käytetään ympäristömuuttujaa LS_COLORS. Väriasetusten määrittämistä helpottamaan on tehty dircolors-ohjelma.

Valitsimia

  • -a - näyttää kaikki tiedostot (mukaan lukien erikoistiedostot . ja ..)
  • -A - näyttää kaikki tiedostot paitsi .:n ja ..:n
  • --author - valitsimen -l kanssa käytettynä näyttää omistajaryhmän nimen ja tiedostokoon välissä tiedoston tekijän nimen (muualla kuin GNU Hurdissa sama kuin tiedoston omistaja)
  • -b - näyttää tiedostojen ei-graafiset merkit oktaalisina koodeina
  • --block-size= - määrittää tiedoston koon näyttämisessä käytettävän lohkokoon [1]
  • -B - ei näytä varmuuskopiotiedostoja, eli tiedostoja, jotka alkavat merkillä ~
  • -c - valitsinyhdistelmän -lt kanssa näyttää tiedostojen ctimen ja järjestää sen mukaan, valitsimen -l kanssa käytettynä näyttää mtimen sijasta ctimen
  • -C - käytettäessä lyhyttä muotoa järjestää tulosteen sarakkeisiin (oletus)
  • --color= - väriasetus, ks yllä
  • -d - näyttää hakemistojen sisällön sijasta niiden omat tiedot, eikä seuraa komentorivillä määriteltyjä symbolisia linkkejä, jollei valitsimia -H, -L tai --dereference-command-line-symlink-to-dir ole määritelty
  • -D - sovittaa tulosteen Emacsin dired-tilaa varten
  • -f - sama kuin -aU --color=never, kumoaa myös mahdolliset tätä ennen annetut -l- ja -s-valitsimet
  • -F - lisää tiedostonnimien perään merkin * kuvaamaan suoritusoikeutta, merkin / kuvaamaan hakemistoja, merkin @ kuvaamaan symbolisia linkkejä, merkin | kuvaamaan nimettyjä putkia ja merkin = kuvaamaan socketeja
  • --file-type - sama kuin -F, mutta ei lisätä *-merkkejä
  • --format= - listauksen muoto, across on sama kuin -x, commas on sama kuin -m, horizontal on sama kuin -x, long on sama kuin -l, single-column on sama kuin -1, verbose on sama kuin -l ja vertical on sama kuin -C
  • --full-time - sama kuin -l --time-style=full-iso
  • -g - sama kuin -l, mutta ei näytä tiedoston omistajaa
  • --group-directories-first - näyttää hakemistot listauksessa ensimmäisinä, kumoutuu valitsimilla --sort=none ja -u
  • -G - ei näytä pitkässä muodossa ryhmien nimiä
  • -h - näyttää tiedostojen koot lohkojen sijasta kilo-, mega- tai gigatavuina jne
  • --si - sama kuin -h, mutta käyttää kertoimena 1024:n sijasta 1000:ta
  • -H - seuraa komentoriviltä määriteltyjä symbolisia linkkejä
  • --dereference-command-line-symlink-to-dir - seuraa komentoriviltä määriteltyjä, hakemistoihin osoittavia symbolisia linkkejä
  • --hide= - ei näytä määriteltyyn komentorivilausekkeeseen (esim *.ogg) sopivia tiedostoja, voidaan ohittaa valitsimilla -a ja -A
  • --indicator-style= - määrittää, mitä tiedoston tyyppiä tai oikeuksia kuvaavia erikoismerkkejä sen nimeen lisätään, none tarkoittaa ei mitään, slash on sama kuin valitsin -p, file-type sama kuin --file-type ja classify sama kuin -F
  • -i - tulostaa tiedoston i-node-numeron
  • -I - ei näytä määriteltyyn komentorivilausekkeeseen (esim *.ogg) sopivia tiedostoja
  • -k - sama kuin --block-size=1K
  • -l - käyttää pitkää muotoa (ks yllä)
  • -L - seuraa aina symbolisia linkkejä, ts näyttää linkin kohteen tiedot itse linkkitiedoston sijasta
  • -m - näyttää tulosteen pilkuilla eroteltuna
  • -n - sama kuin -l, mutta näyttää omistajien ja ryhmien nimien sijasta niiden UID- ja GID-numerot
  • -N - näyttää tiedot raa'assa muodossa, soveltamatta ohjausmerkkejä
  • -o - sama kuin -l, mutta ei näytä omistajaryhmän nimeä
  • -p - lisää hakemistojen nimen perään /-merkin
  • -q - tulostaa ei-graafisten merkkien kohdalla kysymysmerkin
  • --show-control-chars - näyttää ei-graafiset merkit sinällään
  • -Q - lisää tiedostonnimien ympärille lainausmerkit
  • --quoting-style= - määrittelee tiedostonnimien ja muiden merkkijonojen, jotka voivat sisältää ei-graafisia merkkejä, käsittelyn [2]; literal on sama kuin valitsin -N, shell lisää lainausmerkit POSIX-sukuisten komentotulkkien erikoismerkeiksi tulkitsemien merkkien ympärille, shell-always lisää aina lainausmerkit, c sama kuin valitsin -Q, escape on sama kuin valitsin -b, clocale sama kuin valitsin -Q mutta sovittaa lainausmerkit lokalisointiin, locale sama kuin edellä, mutta C-lokaalilla käyttää `tällaisia' lainausmerkkejä "tämänlaisten" sijaan
  • -r - näyttää tulosteen käänteisessä järjestyksessä
  • -R - rekursiivinen tulostus, tulostaa myös kaikkien alihakemistojen ja niiden alihakemistojen sisällön
  • -s - näyttää tiedostojen koot (oletuksena lohkoina)
  • -S - järjestää tiedostot tiedostokoon mukaan
  • --sort= - määrittää tiedostojen järjestelyn, none on sama kuin valitsin -U, extension sama kuin -X, size sama kuin -S, time sama kuin -t ja version sama kuin -v
  • --time= - määrittää, mikä aika näytetään pitkässä muodossa, atime on sama kuin valitsin -u, access sama kuin -u, use sama kuin -u, ctime sama kuin -c ja status sama kuin -c, yhdessä --sort-valitsimen kanssa järjestää listan määritellyn aikaleiman mukaan
  • --time-style= - määrittelee ajan esittämisen muodon [3]
  • -t - järjestää muokkausajankohdan (mtime) mukaan
  • -T - tabulaattorin (sarkaimen) pituus, oletuksena 8 merkkiä
  • -u - valitsinyhdistelmän -lt kanssa näyttää tiedostojen atimen ja järjestää sen mukaan, valitsimen -l kanssa käytettynä näyttää mtimen sijasta atimen
  • -U - ei järjestä tiedostoja, luettelee ne siinä järjestyksessä kuin ne ovat hakemistossa
  • -v - järjestää version mukaan, eli tulkitsee tiedostonnimien numerojonot numerosisältönsä mukaan [4]
  • -w - itsemääritelty arvo ruudun (pääteikkunan) leveydelle
  • -x - näyttää tulosteen sarakkeiden sijasta riveinä
  • -X - järjestää tiedostot aakkosellisesti tiedostopäätteen (viimeisen pisteen jälkeinen merkkijono) mukaan, päätteettömät tiedostot luetellaan ensin
  • -Z - tulostaa SELinuxin turvallisuustietoja
  • -1 - näyttää yhden tiedoston per rivi

Katso myös