C shell

C shell, forkortet csh, er et Unix-skall (kommandotolk) utviklet av Bill Joy mens han studerte ved University of California, Berkeley (UCB) på slutten av 1970-årene. Motivasjon for utviklingen var å skape et mer brukervennlig og effektivt miljø for utviklere. Csh ble umiddelbart populært i mange Unix-miljøer, og inkludert i 2BSD Unix, som Joy og UCB begynte å distribuere i 1978. Andre bidragsytere til utviklingen av csh var Michael Ubell, Eric Allman, Mike O'Brien og Jim Kulp.

C shell
Skaper(e)Bill Joy
Utvikler(e)Bill Joy
Utgitt 1978
Kodelagerhttps://github.com/freebsd/freebsd-src/tree/main/bin/csh
OperativsystemBSD GNU/Linux
Skrevet iC
TypeUnix-skall
LisensBSD-3[1][2]
EtterfølgerTcsh[3][4]

C shell kjører – i likhet med andre kommandotolker – normalt i et tekstvindu eller en tekst-terminal. Det kan også utføre kommandoer fra fil, og er et programmeringsspråk i seg selv - med vesentlige utvidelser i forhold til sin forgjenger og inspirator, sh eller Bourne Shell. Mange av disse utvidelsene er hentet fra programmeringsspråket C, som navnet C shell også indikerer.

Rikere programmeringsmuligheter med C-lignende syntaks var én av egenskapene som gjorde csh populært utover 1980-årene. En annen var brukervennligheten, og spesielt historie-listen der tidligere kommandoer lagres, kan hentes frem og redigeres. Slik funksjonalitet har siden vært en selvfølge i alle kommandotolker uavhengig av operativsystem.

En csh-klone ble utviklet for MS-DOS[5] i 1986, for OS/2 i 1988 og siden for en rekke andre operativsystemer. Hamilton C-Shell,[6] som opprinnelig ble utviklet for OS/2, vedlikeholdes fortsatt som kommersielt produkt for Windows.

Mot slutten av 1980-årene ble C shell på mange systemer erstattet eller supplert av den forbedrede utgaven tcsh. De fleste bruker-funksjonene introdusert av csh - med unntak av programmerings-syntaksen - er videreført i bash, den mest utbredte og brukte kommandotolken på Unix- og Linux-systemer siden årtusenskiftet.

Referanser

Litteratur

  • William N. Joy: An Introduction to the C Shell [1]
Autoritetsdata