Ugrás a tartalomhoz

Kötegelt állomány

Ellenőrzött
A Wikipédiából, a szabad enciklopédiából
Windows/DOS batch fájl
Fájlkiterjesztés.bat, .cmd
MIME-típusapplication/txt
Formátum típusaszöveges parancsfájl fájlformátum
Mac OS típuskód.bat , .cmd

Az általában .cmd vagy .bat kiterjesztésű kötegelt állományokat (angolból átvett néven batch fájlokat) Windows, OS/2, és MS-DOS rendszerekben szokták használni. Formailag egy szövegfájlhoz hasonlítanak, tartalmuk pedig parancsok (DOS/Windows parancsok) egymásutánja. Futtatásuk a tartalom sorról sorra való olvasásával történik pl.: a cmd.exe-vel. A batch fájlok a rendszergazdák számára nélkülözhetetlen „erőforrások”, hisz segítségükkel számos indításkor elvégzendő feladat automatizálható.

Változók

[szerkesztés]

A batch fájlokban felhasználhatóak a rendszer környezeti változói, valamint újabb változók is deklarálhatóak. Létrehozásuk:

SET valtozonev=”érték”

Különlegességként fogható fel, hogy a változó deklarálásakor azonnal értéket kell adni neki, valamint, hogy lehetőség van a változó aritmetikai kiértékelésére a /a kapcsolóval. Ez azt jelenti, hogy stringként való értelmezés helyett matematikailag értelmezi a változót.

SET valt=10+10 (Stringként értelmezi)
SET /a valt=10+10 (Összeadja, s az eredmény 20 lesz)

Paraméterek

[szerkesztés]

Az indításkor megadott bemeneti paraméterek kiírására a %0, %1, %2..%9 szolgál. A %0 visszaadja a futtatott file nevét, amíg a %1-%9 pedig a bemeneti paramétereket, kapcsolókat adja vissza.

Elágazások, iterációk

[szerkesztés]

A batch fájlokba lehetőség van elágazások és iterációk beágyazására is. Elágazások szintaktikája:

IF [NOT] condition (statement1) [else (statement2)]

Iterációk szintaktikája:

for [módszer] (változónév) in (fájllista) do (parancs) 
Ahol a módszer lehet:
/D: Könyvtárak iterálása
/R: alkönyvtárakkal együtt
/L: értéksorozat végigjárása
/F: fájlon belül soronkénti iterálás
Kapcsoló nélkül: Fájlok iterálása

Példakód

[szerkesztés]
@echo off
REM megjegyzések irhatók ide
echo %1
echo %2
IF "%1"=="param" (
echo Sikeres
)ELSE (
echo Sikertelen
)
for /l %%B in (0,1,20) do echo %%B
echo on

További információk

[szerkesztés]