Ohjelmointi Unixissa, luku 4 Komentotiedostot:

Ohjausrakenteet

Ehtorakenteet ovat hiukan erilaisia eri shellejä käytettäessä. Seuraavat ohjeet koskevat tcsh:ta.

Komentotiedostoissa voidaan käyttää seuraavanlaista ehtorakennetta:

if (lauseke) then
komentojono1
else
komentojono2
endif

Lausekkeissa tavallisimpia rakenneosia ovat

Lausekkeen kunkin rakenneosan ympärillä tulee olla välilyönnit! Esimerkiksi 1+1==2 ei kelpaa, vaan pitää kirjoittaa 1 + 1 == 2. Muutoin lausekkeet kirjoitetaan kuten C-ohjelmointikielessä. Tämä merkitsee erityisesti seuraavia asioita: Esimerkki. Seuraava komentotiedosto toteuttaa eräänlaisen run-komennon: jos komentotiedoston nimenä on run, niin run abc kääntää Fortran-ohjelman abc.f ja, jos käännös menee virheittä, lataa ja tallentaa suoritusvalmiin ohjelman tiedostoon abc ja käynnistää sen.

#!/bin/tcsh
if ( { f77 -O -o $1 $1.f } ) then
  $1
endif

Jos haluaisimme tarkistaa tiedoston olemassaolon ennen kuin yritetään käännöstä, voisimme lisätä if-lauseen eteen seuraavan:

if ( ! -e $1.f ) then
  echo 'Tiedostoa ei löydy.'
  exit
endif

Lause exit aiheuttaa komentotiedoston suorituksen päättymisen.

Ehtorakenteen lisäksi voi tcsh-komentotulkissa olla muitakin ohjausrakenteita, kuten while-end, switch-endsw ja foreach-end. Näistä rakenteista on enemmän selostettu esim. Johdatus UNIXiin -kirjassa.