Відкрити головне меню

Пакетний файл є свого роду файлом сценарію(скриптом) в DOS, OS/2 і Windows. Він містить набір команд, які виконуються командним інтерпретатором і зберігається як звичайний текстовий файл. Пакетний файл може містити команди, які інтерпретатор приймає в інтерактивному режимі і надає змогу створення умовних/безумовних переходів та циклів всередині пакетного файлу, наприклад «if», «for», «goto» та мітки.

Пакетний файл
Розширення файлу: .bat, .cmd, .btm
MIME-тип: application/bat/x-bat/x-msdos-program, text/plain
Тип формату: Скриптова мова

Подібно до JCL та інших мов для мейнфреймів, пакетні файли були створені для полегшення виконання однотипних дій через створення сценаріїв (скриптів) для їх автоматизації. Коли запускається пакетний файл, shell-програма (зазвичай COMMAND.COM або cmd.exe) зчитує та виконує його команди рядок за рядком.[1][2]

Розширення файлу .bat використовується в DOS та Windows. Windows NT та OS/2 також можуть мати розширення .cmd. Пакетні файли в інших системах мають і інші розширення, наприклад .btm в 4DOS, 4OS2.

Особливості виконання пакетний файлів змінились. Частка особливостей, що описані у статті справджуються для усіх пакетних файлів, а решта тільки для певних версій.

ПРИКЛАД:

Щоб сворити і заповнити файл прямо з командної стоки можна в її домашній теіці створити BAT-файл (натриклад C.BAT) з таким текстом:

@ECHO OFF

ECHO INPUT TEXT(FOR EXIT PRESS F6):

COPY CON %1

,і зберегти цей файл.Далі відкрийте командну строку і введіть С [імя файлу,який ви бажаєте створити ,не забувши вказати розширення файлу(наприклад TEXT.TXT(створити текстовий файл TEXT ) або SCRIPT.BAT(пакетний файл SCRIPT) без квадратних дужок].Файл буду знаходитися в домашній теці командної строки.Щоб закінчит введення натисніть F6+Enter .


Приклад програми:

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

 :h
 echo TEST

Програма друкує на терміналі повідомлення "Copyright" й чекає, що надрукує користувач. Якщо напише "OK", то програма у відповідь надрукує "TEST", в інших випадках — нічого.

ЦиклиРедагувати

Синтаксис пакетного файлу дозволяє організовувати два виду циклів:

  • числовий — вказується початок, кінець та крок збільшення числа. Приклад:
 for /l %%i in (1, 1, 10) do echo %%i
  • послідовне сканування об'єктів — вказується список, з якого послідовно брати по одному об'єкту. Зазвичай, це файли з теки. Приклад:
 for /r c:\tmp %%i in (*.htm) do ren %%i %%~ni.html
  • в цьому прикладі:
    • ключ /r — вказує, що потрібно просканувати всю теку c:\tmp та всі її вкладені теки;
    • вираз (*.htm) — шукаємо виключно файли з розширенням .htm
    • оператор do — вказує що саме потрібно зробити з кожним найденим файлом. Якщо команд декілька, то вони об'єднуються дужками. Якщо потрібно не тільки змінити назву файлу, а ще й попередньо вилучити, якщо вже такий існує:
 for /r c:\tmp %%i in (*.htm) 
  do ( 
        del %%~ni.html
        ren %%i %%~ni.html 
     )

Змінні в командних файлахРедагувати

Ім'я змінної має бути одна латинська буква, чутливі до регістра. Тобто %%i та %%I різні змінні.

Інтерпретатор розрізняє як виконується команда:

  • якщо безпосередньо з терміналу, то змінна має починатись з одного знаку %;
  • якщо з командного файлу, то з двох — %%.

Якщо змінна це файл, то модифікатори дозволяють визначити, що саме буде означати зміна:

  • тільки назва файлу — %%~ni
  • розширення файлу — %%~xi
  • повна назва файлу разом із шляхом, якщо потрібно, то екранується — %%~fi
  • тільки шлях до файлу — %%~pi
  • розмір файлу — %%~zi

ВерсіїРедагувати

DOSРедагувати

В MS-DOS пакетний файл запускається командного рядка, потрібно ввести ім'я файлу разом з необхідними параметрами та натиснути «Enter». Коли завантажується MS-DOS, файл AUTOEXEC.BAT виконується автоматично, так що будь-які команди, які повинні виконуватися, щоб налаштувати середовище MS-DOS для використання можуть бути розміщені в цьому файлі. Користувач, використовуючи файл autoexec, може встановлювати та змінювати системний час та дату, ініціалізувати середовище MS-DOS, завантажувати будь-які резидентні програми та ініціалізувати мережеві підключення.

ПриміткиРедагувати

  1. Using batch files: Scripting; Management Services. Technet.microsoft.com. 2005-01-21. Процитовано 2012-11-30. 
  2. File extension BAT - How to open. File-extensions.org. 2006-08-08. Процитовано 2012-11-30.