ST:n komentotulkeista

Yleistä
                     
-------
                     
                     
                     
Komentotulkki on ohjelma, jonka avulla kommunikoidaan tietokoneen
                     
käyttöjärjestelmän kanssa. Komentotulkkia ei pidä sekoittaa itse
                     
käyttöjärjestelmään, johon niitä voi olla saatavissa useita.
                     
Komentotulkkia käytetään mm. ohjelmien käynnistämiseen, tiedostojen
                     
kopiointiin, poistamiseen,suojaamiseen, tulostamiseen ja
                     
uudelleennimeämiseen, hakemistojen luontiin ja poistamiseen, hakemiston
                     
sisällön tulostamiseen, kellonajan asettamiseen ja lukemiseen.
                     
                     
                     
Xeroxin Palo Alto Research Centerissä (PARC) kehitettiin viime 
                     
vuosikymmenen lopulla toisenlainen käyttäjäliitäntä, jota kutsutaan usein
                     
WIMPiksi (Windows, Icons, Mouse, Pull-down menus).WIMP-pohjaisia 
                     
käyttäjäliitäntöjä ovat mm. GEM, Microsoftin Windows,IBM:n Presentation
                     
Manager sekä Macintoshin että Amigan käyttäjäliitännät. 
                     
                     
                     
                     
                     
ST:n komentotulkkeja
                     
--------------------
                     
                     
                     
Atari ST:hen on ollut tarjolla komentotulkkeja heti sen tultua
                     
markkinoille. Kyseessä ei suinkaan ole paluu vanhaan 
                     
ohjelmistoteknologiaan vaan yksinkertaisesti se, että kumpikin 
                     
käyttäjäliitäntä elää ja voi hyvin, kummallakin on vahvat puolensa.
                     
ST:n käyttäjät ovat siitä onnellisessa asemassa, että he voivat valita
                     
tilanteeseen parhaiten sopivan lähestymistavan. Komentotulkki
                     
käynnistetään GEM Desktopista aivan kuten mikä tahansa ohjelma, paluu 
                     
Desktopiin tapahtuu yleensä komennolla exit.
                     
                     
                     
Atari ST:hen on saatavissa mm. seuraavat komentotulkit: BATCH.TTP,
                     
Beckemeyer MT-Shell, msh (Mark Williams micro-shell), COMMAND.TOS, Gulam,
                     
Pcommand, SHELL.PRG. Näistä kolme ensiksi mainittua on kaupallisia
                     
ohjelmia ja neljä viimeistä ilmaisohjelmia tai julkisohjelmia.
                     
                     
                     
                     
                     
Pari esimerkkiä
                     
---------------
                     
                     
                     
Milloin komentotulkkia kannattaa käyttää? Paljolti on kysymys makuasiasta,
                     
mutta selviäkin tapauksia on. Ajatellaanpa vaikka, että halutaan suojata
                     
kaikki levykkeellä olevat .PRG-loppuiset tiedostot kirjoittamiselta (koko
                     
levyn suojaus ei kelpaa, koska silloin levylle ei voi kirjoittaa ollenkaan)
                     
GEM Desktopissa joutuu käymään erikseen läpi joka tiedoston (valitaan
                     
hiirellä, valikosta Show Info (Näytä Tiedot), hiirellä kirjoitussuojaus
                     
päälle, OK). Jokaisen suojattavan tiedoston kohdalla levyaseman moottori
                     
käynnistyy, tiedot haetaan hakemistosta, muutokset tehdään, moottori 
                     
pysähtyy. Gulamissa annetaan vain komento: chmod -w *.prg, suoritus on 
                     
nopeaa, levyasema ei pysähtele tiedostojen välillä.
                     
                     
                     
Toinen esimerkki: halutaan tulostaa kaikki a- ja b-alkuiset BASIC-tiedostot
                     
kirjoittimelle. BASICissa jokainen tiedosto on ladattava ja tulostettava
                     
erikseen. GEM Desktopissa joutuu valitsemaan jokaisen tiedoston erikseen 
                     
(kirjoitinspooleri helpottaa tilannetta hieman). Gulamissa annetaan 
                     
komento print [ab]*.bas ja koneen voi jättää itsekseen tulostamaan.
                     
  
                     
                     
                     
Komentotulkin käytöstä
                     
---------------------- 
                     
                     
                     
Kun komentotulkki käynnistetään, tulostuu yleensä jotain alkutekstejä.
                     
Ohjelma saattaa suorittaa myös joitakin ennalta määrättyjä komentoja.
                     
Kun kaikki on valmista, tulostuu näytölle kehoite (prompt) tiedoksi
                     
siitä, että tulkki on valmis vastaanottamaan komentoja. Usein kehoite
                     
kertoo sen, missä hakemistossa (kansiossa) ollaan. Komennon yleinen
                     
muoto on:
                     
                     
                     
  komento [argumentit]
                     
                     
                     
,missä "komento" on komennon nimi ja "[argumentit]" ovat lisätietoa,
                     
jota komennon suorittamiseen saatetaan tarvita (hakasulut tarkoittavat
                     
tässä sitä, että komento ei välttämättä tarvitse argumentteja).
                     
                     
                     
esimerkkejä (Gulam):
                     
                     
                     
date 01-18-88-19:17:30  asettaa ST:n kellon
                     
rx   peli.prg           vastaanottaa Xmodemilla tiedoston peli.prg
                     
gem 1st_word            käynnistää GEM-ohjelman 1st-word
                     
df a: b:                näyttää vapaan levytilan A:ssa ja B:ssä
                     
                     
                     
esimerkkejä (Pcommand):
                     
                     
                     
type wcfields.c         tulostaa tiedoston wcfields.c kuvaruudulle
                     
ctty aux                tulkki siirtyy ottamaan komentoja sarjaportista
                     
arc x pd.arc            ajaa ohjelman arc.ttp (purkaa arkiston pd.arc)
                     
help                    tulostaa komentoluettelon
                     
                     
                     
                     
                     
Ohjelmat käynnistettään kirjoittamalla ohjelman nimi ilman loppuliiteittä
                     
.PRG, .TOS tai .TTP. GEM-ympäristöä käyttävät ohjelmat saattavat vaatia 
                     
jonkin pikkujutun toimiakseen (ks. 1st Word esimerkki edellä). Ohjelman 
                     
tulee olla joko siinä hakemistossa, jossa ollaan tai ns. polku (path) on 
                     
oltava määritelty siten että tulkki osaa hakea ohjelman oikeasta
                     
hakemistosta tai ohjelman nimi on kirjoitettava polkuineen, esim: 
                     
a:\games\hack. Ohjelman mahdollisesti tarvitsemat argumentit tulee antaa
                     
komentorivillä, niitä ei kysytä erikseen kuten ajettaessa .TTP-ohjelmia 
                     
GEM Desktopista.
                     
                     
                     
Pitkät ja usein toistuvat komentosarjat voi etukäteen tallentaa ns.
                     
komentotiedostoon (batch file, shell script). Komentotiedostoja voi
                     
tehdä esim. MicroEmacsilla tai 1st Wordilla (ei WP-moodissa). Se
                     
käynnistetään kuten ohjelma, ilman loppuliitettä (esim. Gulamissa .g-,
                     
Pcommandissa .bat-loppuinen). Komentotiedosto voi myös olla mahdollista
                     
käyttää argumentteja, ehtotestejä ja silmukoita sekä tehdä käyttäjälle
                     
kysymyksiä, riippuen komentotulkin laajuudesta. Yleensä tietynniminen
                     
komentotiedosto (esim. gulam.g, autoexec.bat) suoritetaan aina kun tulkki
                     
käynnistetään. Näin voidaan oma työympäristö voidaan automaattisesti
                     
muokata sellaiseksi kuin halutaan.
                     
                     
                     
                     
                     
Lopuksi
                     
-------
                     
                     
                     
Kullakin komentotulkilla on omat hyvät ja huonot puolensa kuten muillakin
                     
ohjelmilla. Komentokielen rakennekin tietysti vaihtelee. Lopuksi katsotaan
                     
hieman kahta suosittua komentotulkkia, Gulam sekä Pcommand, jotka 
                     
kummatkin ovat olleet diskettilehdessä, numeroissa 3/87 (Gulamin alpha-
                     
versio) ja 1/87 (Pcommandin versio 1.00).
                     
                     
                     
                     
                     
PCommand
                     
                     
                     
Pcommand on ns. shareware-tuote, sitä ja sen dokumentteja saa vapaasti
                     
levittää, muttei myydä, ei myöskään osana muuta ohjelmistoa ilman lupaa.
                     
Rekisteröityminen maksaa $25 johon sisältyy täydellinen dokumentaatio,
                     
desk accessory -versio Pcommandista, sekä IBM PC -yhteensopivia 3 1/2 "
                     
levykkeitä (1 & 2 -puolisia) formatoiva ohjelma. Ohjelman tekijä on
                     
                     
                     
  Solid Applications Inc.
                     
  1333 Moon Drive
                     
  Yardley, PA 19067
                     
                     
                     
Pcommand on riviorientoitunut komentotulkki, joka tukee komentotiedostoja.
                     
Se tarjoaa interaktiivisen liitännän TOSiin, ST:n käyttöjärjestelmään.
                     
Komennot ovat samankaltaisia kuin MS-DOSin komentotulkissa. Pcommandista
                     
käsin voi nopeammin käyttää TOSin palveluita kuin GEMin Desktopista käsin.
                     
                     
                     
Pcommandissa on joukko sisäänrakennettuja komentoja. Sen lisäksi siitä 
                     
käsin pystyy ajamaan sekä GEM- että TOS-pohjaisia sovelluksia.
                     
Komentotiedostot voivat käyttää GEMin keskustelu- ja virheilmoituskenttiä.
                     
                     
                     
Pcommandin sisäänrakennetut komennot
                     
                     
                     
  ?       ABORT   BELL    BREAK    BYE     CD      CHAIN    CHDIR
                     
  CLS     COPY    CP      CTTY     DATE    DEL     DIR      D 
                     
  ECHO    ERASE   ERA     EXIT     FOR     GEM     GOTO     HELP
                     
  IF      INPUT   LOG     MKDIR    MD      PATH    PAUSE    PRINT 
                     
  PROMPT  QED     REM     REN      RENAME  RESERVE RMDIR    RD
                     
  SET     SHIFT   STACK   SWITCHAR TIME    TOS     TYPE     VER     
                     
  VERIFY  VOL     WRAP       
                     
                     
                     
                     
                     
Gulam
                     
                     
                     
Gulam on täysin ilmainen tuote, sen tekijä rohkaisee antamaan ohjelman
                     
toisille, maksua siitä ei saa ottaa. Gulamissa on yli 60 sisäänrakennettua
                     
komentoa, tiedostonimen täydennys, komentopino (annettuja komentoja
                     
muistetaan n kpl, niitä voi antaa uudelleen sekä editoida), komentojen
                     
uudelleen nimeäminen, polun etukäteisetsintä (rehash), 'MicroEmacs'-
                     
editori, yksinkertainen pääte-emulaattori, xmodem-tiedostonsiirto, 
                     
merkkijonon etsintä tiedostosta (egrep), kirjoitintulostus sekä
                     
syötön/tulostuksen uudelleenohjaus.
                     
                     
                     
Gulam muistuttaa Unix 4.xBSD:n komentotulkkia 'csh'. Eroja kuitenkin on.
                     
Uudemman beta-version saa esim.Husky BBS:stä tai ohjelmointiryhmästä
                     
(kannattaa sopia etukäteen). Gulam ei tunne skandinaavisia merkkejä. 
                     
Diskettilehdessä ollut Gulam on sovitettu skandinäppäimistölle 
                     
(erikoismerkit löytyvät oikeista paikoista), Huskyssa olevassa tiedostossa
                     
on mukana C-source, josta voi modifioiden tehdä ohjelman, joka sovittaa
                     
näppäimistön. Ohjelmointiryhmän Gulamissa näppäimistö on valmiiksi
                     
sovitettu.
                     
 
                     
Gulamin sisäänrakennetut komennot:
                     
                     
                     
  alias    dm       endwhile help     more     printenv set      ue 
                     
  cat      dirc     exit     history  mson     pushd    setenv   unalias 
                     
  cd       dirs     fg       if       msoff    pwd      source   unset 
                     
  chmod    echo     fgrep    kb       mv       rehash   sx       unsetenv 
                     
  copy     egrep    foreach  lpr      peekw    ren      te       which 
                     
  cp       ef       format   ls       pokew    rm       teexit   while 
                     
  date     endfor   gem      mem      popd     rmdir    time     
                     
  df       endif    grep     mkdir    print    rx       touch    
                     
                     
                     
                     
                     
Esa Matti Lippu

Takaisin

(C) Marko, Suomen Atari-sivut / ArkiSTo 2003