Unix-skall

Fra Wikipedia, den frie encyklopedi
Hopp til: navigasjon, søk
Noen kommandoer og deres medfølgende output i bash.

Et skall (engelsk: shell) er er fellesbetegnelse på kommando-tolker i en rekke operativsystemer. Et effektivt, tekstorientert grensesnitt mellom operativsystemet og brukeren, typisk med mulighet for å utføre 'kommandofiler', tekstfiler som inneholder kommandoer. Begrepet stammer opprinnelig fra Unix, og Unix' opprinnelige skall, sh ('Bourne Shell', 1977[1]) ble rollemodell for all senere utvikling av kommando-tolker. Ikke minst det faktum at Unix-skallet er et vanlig brukerprogram, ble trendsettende. Brukere kan velge mellom ulike skall, og utvikle sine egne – uten spesielle privilegier.

Frikoblingen mellom system og kommando-tolk førte til at det over tid ble utviklet en rekke skall for Unix- og Unix-lignende operativsystemer. Det opprinnelige skallet ble utviklet av Stephen R. Bourne (sh, bsh), og er over tid erstattet av nyere og mer funksjonsrike varianter som Korn Shell (ksh), zsh, C-shell (csh), T-shell (tcsh) og «Bourne-again-shell» (bash). Sistnevnte er mest utbredt i dag, men de fleste Unix- og Unix-lignende systemer inkluderer en håndfull ulike skall.

Et skall er både kommando-tolk og programmeringsspråk (ofte kalt skriptspråk). Muligheten for å bruke kommando-tolken til programmering har vært essensiell for automatisering og drift av Unix-systemer siden 70-tallet. Programmene kan inneholde kontrollstrukturer, variabler og funksjonalitet som gjør det mulig å lage strukturerte programmer som kombinerer flere verktøy og programmer.

Programmeringsmuligheter og syntaks varierer betydelig mellom ulike Unix-skall, og har i årenes løp gitt opphav til kompatibilitetsproblemer mellom ulike systemer og generasjoner. Å etablere en standard for skall-programmering ble derfor en viktig del av standardiserings-prosessen for Unix på slutten av 80- og begynnelsen av 90-tallet. POSIX.2 (1992) definerer egenskaper og syntaks for et Unix-skall, og er basert på den tidens mest utbredte skall, ksh88.[2]

Skall-standarden ble en del av Single Unix Specification, og er senere blitt tilgjengelig som IEEE standard 1003.1. Standarden vedlikeholdes av både IEEE Computer Society og The Open Group.

norsk brukes ofte det engelske ordet shell.

Alternative betydninger[rediger | rediger kilde]

Uttrykket «skall» blir også brukt i en mer generell betydning, for å beskrive et hvert program som fungerer som et grensesnitt mot det underliggende operativsystemet. Grafiske brukergrensesnitt blir således av og til kalt for «grafiske skall» eller «visuelle skall». (engelsk: «visual shells», «graphical shells»)

Referanser[rediger | rediger kilde]

  1. ^ S. R. Bourne (August 1978). «The UNIX Shell». Bell Systems Technical Journal. 
  2. ^ Arnaud Tomei (Spring 2016). «A Brief POSIX Advocacy: Shell Script portability». ;login:.  Sjekk datoverdier i |dato= (hjelp)