Autoexec.bat és a config.sys szerepe
A MS-DOS 6 biztosítja annak lehetõségét, hogy bizonyos DOS parancsokkal elvégzett mûveletsorozat végrehajtását automatikussá tegyük. Ehhez a felhasználni kívánt parancsokat szöveges file-ba kell eltárolnunk és a file-nak BAT (batch) kiterjesztést kell adnunk. Ezt a file-t parancs (batch) file-nak vagy batch programnak nevezzük.
A batch program formátum nélküli szöveg file, amelyet létrehozhatunk szövegszerkesztõ program segítségével (pl. EDIT) vagy akár a billenyûzet file-ba történõ átirányításával:
COPYÈCONÈPROBA.BAT.
Nézzünk egy példát. Tegyük fel, hogy a merevlemezen dolgozunk, és a munkánk végeztével minden alkalommal lementjük a file-jainkat floppy lemezre, majd ellenõrizzük a másolás eredményét. A mûvelet elvégzéséhez szükséges parancsokat helyezzük a MENT.BAT nevû file-ba:
COPYÈ*.TXTÈA:\
FCÈ*.TXTÈA:\*.TXT
Ha kiadjuk a MENT parancsot, akkor a fenti két utasítás automatikusan végrehajtódik, és elvégzi a kijelölt mûveleteket. Az FC parancs az ellenõrzés után kérdést tesz fel:
Compare more file (Y/N) ?
Amire N-el kell válaszolnunk. Ahhoz, hogy ezt a fölösleges kérdésfeltevést kiküszöböljük, módosítsuk a MENT.BAT file-t az átirányítás lehetõségének felhasználásával.
COPYÈ*.TXTÈA:\
ECHOÈNÈ|ÈCOMPÈ*.TXTÈA:\*.TXT
Tegyük még komfortosabbá a parancsfileunkat az alábbiak szerint. Az ECHO OFF utasítás hatására a képernyõn nem fognak megjelenni az egyes parancsok. Ahhoz, hogy maga az ECHO OFF utasítás se jelenjen meg, használnunk kell a @ karaktert a parancs elõtt.
@ECHOÈOFF
REMÈMentés
ECHOÈKérekÈegyÈlemeztÈazÈA:Èmeghajtóba:
PAUSE
ECHOÈMásolás
COPYÈ*.TXTÈA:\
ECHOÈEllenõrzés
ECHOÈNÈ|NÈCOMPÈ*.TXTÈA:\*.TXT
A parancs file futása megszakítható a
Terminate batch job (Y-N) ?
kérdés, amelyre ha Y-nal válaszolunk, akkor a batch futása megszakad, de ha N-nel válaszolunk, akkor a parancs program végrehajtása folytatódik.
Sokrétû felhasználásra ad lehetõséget a parancs fiile-ok paraméterezése. A batch program paramétereire a %l,..,%9 szimbólumokkal hivatkozhatunk. (A %0 szimbólum a parancs file nevét tartalmazza abban a formában, ahogyan azt aktivizáltuk.) Ezek alapján tegyük paraméterezhetõvé a MENT.BAT programunkat, miáltal az alkalmassá válik tetszõleges file mentésére:
@ECHOÈOFF
REMÈMentés
ECHOÈKérekÈegyÈlemeztÈazÈA:Èmeghajtóba:
PAUSE
ECHOÈMásolás
COPYÈ%lÈA:\
ECHOÈEllenõrzés
ECHOÈNÈ|ÈCOMPÈ%1ÈA:\%1
A batch file helyes használata például:
MENTÈA*.PAS
Ekkor csak az A*.PAS specifikációjú file-ok mentése történik meg. Ha elfelejtkezünk a paraméter megadásáról, akkor hibajelzések sorát kapjuk a DOS-tól. Utolsó lépésként módosítsuk úgy a batch file-unkat, hogy az figyelmeztessen a paraméter megadásának szükségességére.
@ECHOÈOFF
REM Mentés
IFÈ"%1"È==È"" GOTO HIBA
ECHOÈKérekÈegyÈlemeztÈazÈA:Èmeghajtóba:
PAUSE
ECHOÈMásolás
COPYÈ%lÈA:\
ECHOÈEllenõrzés
ECHOÈNÈ|ÈCOMPÈ%1ÈA:\%1
GOTOÈKILEP
:HIBA
ECHOÈparancsfileÈhelyesÈhasználata:
ECHOÈMENTÈfile_specifikáció
:KILEP
Mint látható az IF és a GOTO utasítások használatával, a DOS parancsok használata, mellett különbözõ programstruktúrák is kialakíthatók.
A parancsfile-ban minden olyan DOS parancs megadható amely az MS-DOS készenléti jelénél használható. Az operációs rendszer azonban tartalmaz olyan batch utasításokat is, amelyek segítségével a parancs file kialakítása teljes mértékben a felhasználói igények alapján történhet. Az alábbiakban összefoglaljuk a bateh file-ok írásakor felhasználható utasításokat.
Call - másik parancsfile álprogramként történõ indítása,
Choice - válasz bekérése a billentyûzetrõl
Echo - üzenetkiírás, illetve a parancsvisszaírás ki/be kapcsolása,
For - parancs végrehajtása file-csoport esetén,
Goto - vezérlésátadás a batch programon belül
If - feltételes parancsvégrehajtás,
Pause - várakozás felhasználói jóváhagyásra,
Rem - megjegyzés a batch programban
Shift - paraméterek léptetése a parancssorban.
2. Konfigurációs állományok
Az MS-DOS 6.22 rendszer alapkonfigurációjának beállítására továbbra is a CONFIG.SYS és az AUTOEXEC.BAT file szolgál. Alapvetõ különbség van a két file feldolgozásának, a DOS operációs rendszer indítási folyamatában elfoglalt helye között. A CONFIG.SYS a parancsértelmezõ (COMMAND.COM) betöltõdése elõtt kerül kiértékelésre, míg az AUTOEXEC.BAT file-t már a COMMAND.COM dolgozza fel.
A CONFIG.SYS és az AUTOEXEC.BAT file-okat, mindig annak a lemeznek a gyökérkönyvtárában keresi a DOS, amelyikrõl a rendszer betöltése elindult. Az operációs rendszer betöltésekor (boot) az indítási lemezegység gyökérkönyvtárában található CONFIG.SYS és AUTOEXEC.BAT file-ok tartalma alapján alakul ki az indítási konfiguráció. Ha a DOS nem találja a fenti file-okat, akkor alapértelmezés szerinti beállításokkal töltõdik be az operációs rendszer.
1.1 Config.sys
A CONFIG.SYS-ben lehetõség van arra, hogy a felhasználói igényeknek megfelelõen konfiguráljuk az operációs rendszert. Megadható, hogy hogyan használja az MS-DOS a memóriát, a hardver elemeket (billentyûzet, képernyõ, lemezegységek), illetve a file-okat. A hardver elemieket eszköznek (device), míg az azt vezérlõ operációs rendszerbeli programot eszközvezérlõnek (device driver) nevezzük. A konfiguráció mellett az MS-DOS 6.22 lehetõséget biztosít arra, hogy ismerve a számítógépünk kiépítettségét, a legfontosabb erõforrások (memória lemezterület) optimális, gyors felhasználását valósítsuk meg.
A CONFIG.SYS formátum nélküli szöveg file, amelyet tetszõleges szövegszerkesztõvel létrehozhatunk, például az EDIT-tel. Ha a szövegszerkesztõ használatában nem vagyunk elég járatosak, használjuk az egyszerû copy parancsot:
COPYÈCONÈCONFIG.SYS.
A megfelelõ MS-DOS konfiguráció kialakításához ismernünk kell a CONFIG.SYS file-ban megadható utasításokat. A file egyrészt konfigurációs parancsokat tartalmaz, másrészt az eszközvezérlõk installálását végzi el. Az MS-D0S 6.22 különbözõ konfigurációs parancsokat biztosít, amelyek közül a BREAK, a REM és a SET utasítások DOS parancsként is használhatók.
Egy tipikus CONFIG.SYS állomány:
DOS=HIGH,UMB {DOS a HMA-ban, UMB használatának engedélyezése}
FILES=60 {Az egyidejüleg elérhetõ file-ok száma}
BUFFERS=20,0 {A lemezkezeléshez szükséges, memóriában kialakított pufferek száma}
DEVICE=C:\DOS\HIMEM.SYSÈ/TESTMEM:OFF {Eszközvezérlõ az extended memória kezelésére}
DEVICE=C:\DOS\EMM386.EXE RAM {UMB használatot biztosító expanded memória emulátor}
DEVICEHIGH=C:\DOS\CDROM.SYSÈ/D:MSCD001 {CD meghajtó eszközvezérlõje}
DEVICEHIGH=C:\DOS\display.sysÈcon=(ega,,1) {Nemzetközi karakterkészletek használatának engedélyezése}
COUNTRY=036,852,C:\DOS\country.sys
{Engedélyezi a DOS számára az idõ, dátum, pénznem és karakterkészlet országfüggõ használatát}
SHELL=C:\DOS\COMMAND.COMÈC:\DOS\È/E:1024È/P {A parancsértelmezõ megadása és paraméterezése}
LASTDRIVE=Z {Elérhetõ logikai egységek maximális száma}
1.2 Autoexec.bat
Az MS-DOS különbözõ változataiban az AUTOEXEC.BAT file segítségével lehetõség nyílik az operációs rendszer megfelelõ mûködési környezetének kialakítására. Használata nem kötelezõ, de ha mégis használjuk, akkor azt annak a lemeznek a gyökérkönyvtárában kell elhelyezni, ahonnan a rendszer betöltõdött.
Egy tipikus AUTOEXEC.BAT állomány:
@ECHOÈOFF {Parancsnevek kiíratásának letiltása}
PATHÈC:\DOS;C:\NC;C:\NU;C:\UTIL;C:\BP\BIN {Keresési útvonal meghatározása}
PROMPTÈ$P$G {Készenléti jel beállítása}
SET TEMP=C:\TEMP {Ideiglenes file-ok helyének meghatározása}
VERIFYÈOFF {Lemezmûveletek ellenõrzésének kikapcsolása}
modeÈconÈcodepageÈprepare=((852) C:\DOS\ega.cpi)
modeÈconÈcodepageÈselect=852
LHÈkeybÈhu,,C:\DOS\keybrd2.sys
{A fenti három sor a kódlapot és a billentyûzetet állítja be}
LHÈC:\DOS\SHAREÈ/F:4096È/L:500 {Merevlemez állományainak megosztott elérését biztosítja}
LHÈC:\DOS\MSCDEX.EXEÈ/D:$MSCD001È/M:8È/VÈ/E {CD-ROM-hoz rendel logikai meghajtónevet}
LHÈC:\DOS\SMARTDRV.EXE {Lemezgyorsító program}

0 hozzászólás:
Megjegyzés küldése