3. december

ls

Dagens kommando, "ls" (kort for "list"), hører ikke til blandt de mest avancerede unix-kommandoer, men dens betydning er temmelig stor, når man arbejder på kommandolinien. Den er nemlig beregnet til at vise lister med indholdet af et katalog, og er således en del af den betydningsfulde treenighed "whoami" (hvem), "ls" (hvad) og "pwd" (hvor).

Hvis du læser brugsanvisningen til ls(1), vil du se at kommandoen har et stort udvalg af tilvalg. I standardudgaven, helt uden tilvalg, udskriver "ls" en liste med de filer, kataloger og symbolske henvisninger, der findes i arbejdskataloget i en eller flere søjler:

~/katalog/> ls
almindelig_fil       underkatalog
symbolsk_henvisning
~/katalog/> 

Du skal dog passe på, hvis du gennem en kanal sender uddata videre til en anden kommando. Så bliver udskriften nemlig begrænset til en fil per linie:

~/katalog/> ls | cat
almindelig_fil
symbolsk_henvisning
underkatalog
~/katalog/> 

Dette svarer i øvrigt til at bruge tilvalget "-1".

Detaljeret liste

Det vigtigste tilvalg er nok "-l", der giver en udskrift i et udvidet format:

~/katalog/> ls -l
totalt 5
-rw-r--r--    1 sparre   nbicmplx     3252 nov 30 13:40 almindelig_fil
lrwxrwxrwx    1 sparre   nbicmplx       14 nov 30 13:40 symbolsk_henvisning -> almindelig_fil
drwxr-xr-x    2 sparre   nbicmplx     1024 nov 29 14:29 underkatalog
~/katalog/> 

Første tegn på hver linie fortæller om det drejer sig om en almindelig fil (-), en symbolsk henvisning (l) eller et katalog (d).

Dernæst kommer tre grupper af tre tegn, der beskriver forskellige brugeres rettigheder til filen. Den første gruppe er filens ejers rettigheder, den næste gruppe er filens brugergruppes rettigheder, og den sidste er alle andre brugeres rettigheder. De tre tegn i hver gruppe kan være "r" (må læse filen), "w" (må skrive i filen), "x" (må køre filen som et program) eller "-" (har ikke lov til et eller andet).

De næste interessante felter er filens ejer ("sparre" for alle filerne i ovenstående eksempel) og brugergruppe (her "nbicmplx").

Dernæst kommer filens størrelse (i byte) og hvilket tidspunkt den sidst blev ændret på.

Til sidst kommer filens navn og - hvis det er en symbolsk henvisning - hvilken fil den henviser til.

Smukkere udskrifter

Hvis du synes de ensfarvede udskrifter vist ovenfor er lige vel kedelige, så vil du måske synes om tilvalgene "--color" og "--file-type", der henholdsvis tilføjer farver og symboler til at skelne mellem de forskellige slags filer:

~/katalog/> ls --color --file-type
almindelig_fil        underkatalog/
symbolsk_henvisning@
~/katalog/> 

(hvis din browser ikke forstår stilark, vil ovenstående desværre ikke være farvelagt) Tilvalget "--file-type" kan forkortes til "-F".

Sorterede udskrifter

Som standard udskriver "ls" filerne i alfabetisk orden. Hvis man for eksempel er interesseret i hvornår filerne sidst er rettede, kan man bruge tilvalget "--sort=time":

~/katalog/> ls -l --sort=time
totalt 5
lrwxrwxrwx    1 sparre   nbicmplx       14 nov 30 13:42 symbolsk_henvisning -> almindelig_fil
-rw-r--r--    1 sparre   nbicmplx     3252 nov 30 13:40 almindelig_fil
drwxr-xr-x    2 sparre   nbicmplx     1024 nov 29 14:29 underkatalog
~/katalog/>

Tilvalget "--sort=time" kan forkortes til "-t".

Mere om ls

Brugsanvisningen til "ls" findes med kommandoen "man 1 ls". Hvis uddata ser anderledes ud end i de ovenstående eksempler, når du selv prøver dem, er det højst sandsynligt fordi der er defineret et alias for "ls". Det er for eksempel en udbredt praksis at sætte "ls" til at være et alias for "ls -F" og "ll" til at være et alias for "ls -lF".