CMD ja BAT - nipid ja trikid

Allikas: Hinnavaatlus.ee Wiki
Redaktsioon seisuga 24. november 2005, kell 18:21 kasutajalt 194.204.62.228 (arutelu)
(erin) ←Older revision | Current revision (erin) | Newer revision→ (erin)
Mine navigeerimisribaleMine otsikasti


CMD.EXE ja COMMAND.COM interpretaatoritele skriptimise nippe ja trikke

COMMAND.COM MS-DOS operatsioonisüsteemi kestaks (shell) on käsuinterpretaator nimaga command.com. Command.com suhtleb kasutajaga dialoogrezhiimis (peale sisestusklahvi ENTER vajutamist täidetakse koheselt antud käsk ja väljastatakse tulemus). Command.com on UNIXist tuntud kestprogrammidega (bash, tcsh, sh, korn jne) võrreldes üsna primitiivne samuti on tema utiliitide komplekt kehvapoolne (puuduvad näiteks mõistlikud stringitöötluse vahendid, samuti pole standardsed sisend-väljundvood mõistlikult lahendatud jne.) Siiski on command.com abil võimalik ühte-teist korda saata. Abiks on siinkohal command.com oskus töödelda käske nn. "batch" rezhiimis. Command.com interpretaatorisse ehitatud sisekäsud (näiteks DIR, COPY, DEL jne.) ja eraldi programmidena realiseeritud väliskäsud (MODE, APPEND jne.) moodustavad DOSi käsustiku. Kõiki DOSi sise ja väliskäske, samuti suvalisi käivitusfaile saab panna spetsiaalsesse skriptifaili (batch faili), mida command.com ridahaaval interpreteerib. Sellel rezhiimil täidetakse kõik käsud järjest, nii nagu nad failis on ja väljatatakse tulemused. Faili laiend peab olema .BAT, sest mingil veidral põhjuselt tavatsevad kõik Microsfti operatsioonisüsteemid otsustada faili sisu üle tema laiendi alusel. Command.com on olemas ka Windows 9x seeria operatsioonisüsteemides. Command.com on 16-bitine käsuinterpretaator mis töötab real-modes v. Windowsi keskonnast käivitades virtual-real modes.

CMD.EXE Koos täielikult 32bitise operatsioonisüsteemiga (NT 3.51) laskis Microsoft välja ka uue - 32bitise käsuinterpretaatori CMD. Kahjuks puudub mul täpsem informatsioon NT 3.51 eripärade kohta, seetõttu kehtib kõik järgnev NT4 ja uuemate (2K, XP, 2K3) kohta. CMD käsustik on command.com käskude ülemhulk. Eesti keeli oskab CMD kõike seda mis COMMAND ja veel palju rohkem. Vahel nimetatakse CMD kasutamist ekslikult "DOSi käskudeks". See on vale, sest CMD on täisvereline 32bitine katstud rezhiimi kestprogramm. Windows NT koosseisus on olemas ka vana command.com mida jooksutatakse DOSi emulatsioonirezhhimil, aga ilma erivajadseta pole põhjust seda kasutada. Ka CMD oskab käsujadasid täita "batch" rezhiimis. CMD käsuskripti lainedina on soovitav kasutada .CMD, siis teab süsteem, et skripti interpreteerimiseks tuleks kindlasti kasutada CMD.EXE interpretaatorit. CMD laiendatud võimalused, olgugi napid, annavad juba lihtsama interpreteeriva programeerimiskeele võimekuse välja.