Пакетны файл

файл, які зьмяшчае пасьлядоўнасьць камандаў для каманднага інтэрпрэтатара

Паке́тны файл (па-ангельску: batch file) — тэкставы файл у MS-DOS, OS/2 або Windows, які зьмяшчае пасьлядоўнасьць камандаў, прызначаных для выкананьня камандным інтэрпрэтатарам. Пасьля запуску пакетнага файлу праграма-інтэрпрэтатар (як правіла, COMMAND.COM або cmd.exe) чытае яго радок за радком і пасьлядоўна выконвае каманды. Пакетны файл — аналяг скрыптовых файлаў каманднага радка (shell script) у Unix-падобных апэрацыйных сыстэмах.

Пакетныя файлы ў DOS маюць пашырэньне .BAT; у іншых апэрацыйных сыстэмах яны могуць мець іншыя пашырэньні — напрыклад, .CMD ў Windows NT і OS/2 ці .BTM у 4DOS або падобных абалонках.

Гісторыя

рэдагаваць

Падтрымка пакетных файлаў мелася на MS-DOS з самага пачатку. Камандныя інтэрпрэтатары гэтай сыстэмы (а затым і Windows) прапануюць два рэжымы працы: інтэрактыўны (калі карыстальнік пацьвярджае выкананьне кожнай каманды пакетнага файлу) і звычайны (калі ўсе каманды пакетнага файлу выконваюцца без пацьверджаньня). Канцэпцыя абодвух рэжымаў была запазычаная з інтэрфэйсаў каманднага радка папярэдніх АС (такіх як CP/M) і Unix-абалонак.

Камандны інтэрпрэтатар у MS-DOS (а таксама і ў сямействе Windows 9x) мае назву COMMAND.COM. Найбольш вядомым пакетным файлам у гэтых сыстэмах зьяўляецца AUTOEXEC.BAT, які аўтаматычна выконваецца COMMAND.COM падчас загрузкі апэрацыйнай сыстэмы.

Сямейства Windows NT (2k, XP і далей) не заснаваныя на MS-DOS і ўключаюць інтэрпрэтатар cmd.exe, які часткова сумяшчальны з COMMAND.COM. Некаторыя старыя магчымасьці COMMAND.COM у ім недаступныя, аднак замест іх зьявіліся новыя. COMMAND.COM уключаецца ў NT-падобныя сыстэмы для забесьпячэньня лепшай зваротнай сумяшчальнасьці.

Таксама існуюць кампілятары пакетных файлаў (напрыклад, Bat To Exe Converter), якія пераўтвараюць пакетныя файлы ў самастойныя выканальныя праграмы.

Выкарыстаньне

рэдагаваць

Пакетныя файлы карысныя для аўтаматычнага запуску прыкладаньняў. Асноўная вобласьць прымяненьня — аўтаматызацыя найбольш руцінных апэрацыяў, якія рэгулярна даводзіцца зьдзяйсьняць карыстальніку кампутара: напрыклад, капіяваньне, перасоўваньне, перайменаваньне, выдаленьне файлаў; праца з тэчкамі; архіваваньне і да т. п.

Вірусы і праграмы-жарты могуць быць напісаныя ў выглядзе пакетнага файла, вядомыя таксама генэратары вірусаў, якія зьяўляюцца пакетнымі файламі.

Пакетныя файлы падтрымліваюць апэратары if, goto і for (у сыстэмах сямейства Windows NT яго магчымасьці істотна пашыраны), што дазваляе апрацоўваць вынікі выкананьня папярэдніх камандаў або прыкладаньняў і ў залежнасьці ад гэтага выконваць далей той ці іншы блёк камандаў (як правіла, у выпадку ўдалага завяршэньня дадатак вяртае 0 на зьменнай errorlevel; у выпадку няўдалага — 1 або большае значэньне).

Пакетныя файлы могуць утрымліваць як унутраныя каманды, якія апрацоўваюцца непасрэдна COMMAND.COM або CMD.EXE, так і звароты да зьнешніх утыліт, існуючых у выглядзе асобных праграм (файлаў .EXE альбо любых іншых выканальных модуляў).

Прыклад пакетнага файлу, які друкуе паведамленьне «Copyright» на тэрмінале і чакае, што надрукуе карыстальнік. Калі вы набярэце «ОК», то праграма ў адказ будзе друкаваць «TEST», у іншых выпадках — нічога.

 echo off
 title Script
 color 0a
 cls
 echo Copyright
 set /p var=Script:
 if %var%==OK goto h
 exit

 :h
 echo TEST

Вонкавыя спасылкі

рэдагаваць