Реферат на тему:
Пакетні файли (batch-файли)
Пакетний файл
або пакетна програма
це текстовий файл, який містить одну або декілька команд MS-DOS
(в тому числі і програм) та має розширення BAT
. Якщо ви набираєте ім'я batch
-програми в командному рядку та натискаєте клавішу Enter
, то записані у batch
-файлі команди виконуються послідовно.
Один із batch
-файлів грає особливу роль в системі MS-DOS
. Цей файл зветься AUTOEXEC.BAT
і він виконується автоматично під час завантаження системи. Зауважимо, що AUTOEXEC.BAT
повинен знаходитися в кореневій директорії системного диска (разом з файлами IO.SYS
, MSDOS.SYS
, COMMAND.COM
). Нижче наводиться приклад файла AUTOEXEC.BAT
. Зауважимо, що більшість сучасних програмних засобів модифікує ваш файл AUTOEXEC.BAT
, додаючи до нього необхідні команди. При цьому старий AUTOEXEC.BAT
зберігається під іменем AUTOEXEC.OLD
або якимось іншим.
У batch
-файлі ви можете використовувати будь-які команди MS-DOS
та будь-які виконувані програми. Крім того, наступні команди MS-DOS
спеціально призначені для використання їх у batch
-файлі.
Спеціальні команди batch-файлів
CALL
Викликає інший (вкладений) пакетний файл з наступним поверненням у перший.
CALL [drive:][path]filename [batch-parameters]
[drive:][path]filename
Визначає batch
-файл, що викликається.
batch-parameters
Визначає будь-які параметри, з якими виконується batch
-файл, що викликається.
CHOICE
Очікує, коли користувач натисне одну з множини допустимих клавіш.
CHOICE [/C[:]choices] [/N] [/S] [/T[:]c,nn] [text]
/C[:]choices
Визначає допустимі клавіші. За умовчанням YN
(Yes
так, No
ні
).
/N
Не виводить допустимі клавіші та знак питання (?
) у кінці рядка-підказки.
/S
Не відрізняє регістр натиснутої клавіші (малі чи великі літери).
/T[:]c,nn
Обирає за умовчанням допустиму клавішу c
після nn
секунд очікування.
text
Визначає рядок-підказку, що виводиться на екран.
Код завершення (ERRORLEVEL
) цієї команди є зміщенням натиснутої користувачем клавіші у списку допустимих клавіш.
Команда CHOICE
це зовнішня команда.
ECHO
Виводить текст повідомлення на екран або перемикає режим роботи (ON чи OFF).
ECHO [ON | OFF]
ECHO [message]
ON
Дозволяє виведення на екран командних рядків та повідомлень.
OFF
Забороняє виведення на екран командних рядків та повідомлень.
message
Виводить текст повідомлення (message
) на екран.
Виконайте ECHO
без параметрів для виведення на екран біжучого стану команди (OFF
або ON
).
@
діє як ECHO OFF
на один рядок batch
-файла.
FOR
Виконує визначену команду для кожного файла із множини файлів.
FOR %variable IN (set) DO command [command-parameters]
%variable
Визначає однолітерну змінну, яка послідовно приймає значення імен файлів, що входять до параметру set
.
(set)
Визначає множину з одного або декількох імен файлів. Можна використовувати шаблони (маски) DOS
.
command
Визначає команду, яка виконується для кожного файла із списку.
command-parameters
Визначає параметри для заданої команди.
Для використання команди FOR
у batch
-файлі застосовуйте конструкцію %%variable
замість %variable
.
GOTO
Здійснює перехід на помічений рядок у batch-файлі.
GOTO label
label
Визначає текстовий рядок, що використовується у batch
-файлі як мітка. Мітка стоїть в окремому рядку та починається з двокрапки (:
).
IF
Здійснює розгалуження за умовою в batch-файлі.
IF [NOT] ERRORLEVEL number command
IF [NOT] string1==string2 command
IF [NOT] EXIST filename command
NOT
Визначає, що команда (command
) повинна виконуватися лише у тому разі, якщо умова не має місця (false
хибність).
ERRORLEVEL number
Визначає, що умова виконується (true
істина), якщо остання програма, яка стоіть у batch
-файлі перед if
, повертає код завершення (ERRORLEVEL
) рівний або більший, ніж визначене число (number
).
command
Визначає команду, що виконується, якщо умова має місце.
string1==string2
Визначає, що умова виконується (true
істина), якщо вказані символьні рядки співпадають.
EXIST filename
Визначає, що умова виконується (true
істина), якщо визначене ім'я файла існує.
PAUSE
Призупиняє роботу batch-файла та виводить повідомлення "Press any key to continue..." ("Для продовження натисніть будь-яку клавішу...").
REM
Служить для вставки коментаря в batch-файлі або в файлі CONFIG.SYS.
REM [comment]
comment
Визначає текстовий рядок, що служить коментарем. В режимі ECHO
ON
виводить текст параметра comment
на екран.
SHIFT
Зсуває вліво параметри batch-файла, що дозволяє використовувати більше 10 параметрів.
Якщо batch
-файл виконується з параметрами, то в самому пакетному файлі вони позначаються як %n
, де n
цифра від 0
до 9
.
Приклад файла AUTOEXEC.BAT
@ECHO OFF
D:\DOS\SMARTDRV.EXE
PROMPT $P$G
PATH D:\DOS;C:\UTIL;C:\NC4;D:\WINWORD;C:\WINDOWS;D:\FOXPRO2
PATH D:\NU_7;%PATH%
SET TEMP = D:\
SET NC = C:\NC4
SET SYMANTEC = D:\SYMANTEC
SET NU = D:\NU_7
SET FOXPROCFG = D:\FOXPRO2\CONFIG.FP
C:\UTIL\FDF\FDREAD
C:\UTIL\MOUSE
D:\DOS\MODE CON CP PREP=((866) D:\DOS\EGA.CPI)
D:\DOS\MODE CON CP SEL=866
D:\DOS\KEYB ur
D:\NU_7\IMAGE C: D: /NOBACK
D:\NU_7\NCC /FAST
echo.
d:\nu_7\be beep /F280 /D1
d:\nu_7\be ask "(W)indows, (N)orton_commander, (D)os " wnd DEFAULT=w TIMEOUT=5 BRI YEL
if errorlevel 3 goto Dos
if errorlevel 2 goto Nor
if errorlevel 1 goto Win
:Win
C:\WINDOWS\WIN /s :
:Nor
C:\NC4\NC
:Dos
Файл конфігурації (CONFIG.SYS)
Файл конфігурації
CONFIG.SYS
це текстовий файл, який містить спеціальні команди. Ці команди конфігурують фізичні пристрої комп'ютера так, що MS-DOS
та прикладні програми можуть використовувати їх відповідним чином. Під час завантаження MS-DOS
команди, які містяться в файлі CONFIG.SYS
, виконуються автоматично. Файл CONFIG.SYS
, як і файл AUTOEXEC.BAT
, повинен знаходитися в кореневій директорії системного диска. Нижче наводиться приклад файла CONFIG.SYS
. Зауважимо, що більшість сучасних програмних засобів модифікує ваш файл CONFIG.SYS
, додаючи до нього необхідні команди. При цьому старий CONFIG.SYS
зберігається під іменем CONFIG.OLD
або якимось іншим.
Команди CONFIG.SYS
Наступні команди можуть використовуватися лише у файлі CONFIG.SYS.
BUFFERS
Виділяє пам'ять для визначеного числа буферів диска при старті системи.
BUFFERS=n[,m]
n
Визначає число буферів диска. Величина n
повинна лежати в межах від 1
до 99
.
m
Визначає число буферів у вторинному буферному кеші. Величина m
повинна лежати в межах від 0
до 8
.
За умовчанням буфери диска встановлюються самостійно, причому їх число залежить від обладнання комп'ютера і змінюється в межах від 2
до 15
.
COUNTRY
Дозволяє системі MS-DOS використовувати залежну від країни інформацію при виведенні дати, часу та національної валюти; при визначенні порядку сортування символів; при визначенні того, які символи можуть використовуватися в іменах файлів. Команда COUNTRY конфігурує MS-DOS для розпізнавання множини символів та пунктуації, коли використовується одна з мов, що підтримується системою.
COUNTRY=xxx[,[yyy][,[drive:][path]filename]]
xxx
Визначає код країни.
yyy
Визначає множину символів для країни.
[drive:][path]filename
Визначає місцеположення та ім'я файла, який містить залежну від країни інформацію.
Пов'язані команди: KEYB, MODE, NLSFUNC
.
DEVICE
Завантажує визначені вами драйвери пристроїв у пам'ять.
DEVICE=[drive:][path]filename [dd-parameters]
[drive:][path]filename
Визначає місцеположення та ім'я драйвера пристрою, який ви бажаєте завантажити.
[dd-parameters]
Визначає будь-які параметри, необхідні для драйвера пристрою.
DEVICEHIGH
Завантажує визначені вами драйвери пристроїв у верхню пам'ять. Це дозволяє збільшити об'єм вільної основної пам'яті для прикладних програм. Якщо верхня пам'ять недоступна, команда DEVICEHIGH функціонує просто як команда DEVICE.
DEVICEHIGH [drive:][path]filename [dd-parameters]
[drive:][path]filename
Визначає місцеположення та ім'я драйвера пристрою, який ви бажаєте завантажити у верхню пам'ять.
dd-parameters
Визначає будь-які параметри, необхідні для драйвера пристрою.
DOS
Визначає, чи повинна MS-DOS управляти верхньою пам'яттю та завантажувати частину себе до області вищої пам'яті
(HMA
High Memory Area
).
DOS=HIGH|LOW[,UMB|,NOUMB]
DOS=[HIGH,|LOW,]UMB|NOUMB
UMB|NOUMB
Визначає, чи повинна MS-DOS
управляти блоками верхньої пам'яті (Upper Memory Blocks
UMBs
), утвореними, наприклад, програмою EMM386.EXE
. Параметр UMB
визначає, що MS-DOS
повинна управляти блоками UMBs
, якщо вони існують. Параметр NOUMB
визначає, що MS-DOS
не повинна управляти блоками UMBs
. Установка за умовчанням NOUMB
.
HIGH|LOW
Визначає, чи повинна MS-DOS
спробувати завантажити частину себе до області вищої пам'яті HMA
(параметр HIGH
), або тримати всю MS-DOS
в основній пам'яті (параметр LOW
). Установка за умовчанням LOW
.
DRIVPARM
Визначає параметри пристроїв таких, як дисковод, накопичувач на магнітній стрічці тощо, під час старту MS-DOS. Команда DRIVPARM модифікує параметри існуючих фізичних пристроїв. Вона не утворює нових логічних дисків.
DRIVPARM=/D:number [/C] [/F:factor] [/H:heads] [/I] [/N] [/S:sectors] [/T:tracks]
/D:number
Визначає номер фізичного диска. Величина номера повинна лежати між 0
та 255
(наприклад, диск номер 0 = диск A, 1 = диск B, 2 = диск C, і т.д.).
/C
Визначає, що дисковод може упізнати, чи закриті його дверцята.
/F:factor
Визначає тип диска. У наступному списку наводяться допустимі значення параметра factor
та дається короткий опис кожного з них. Величина за умовчанням 2
.
0
160 K
/ 180 K
або 320 K
/ 360 K
(5.25-дюймовий диск),
1
1.2 M
(5.25-дюймовий диск),
2
720 K
(3.5-дюймовий диск),
5
Жорсткий диск,
6
Накопичувач на магнітній стрічці,
7
1.44 M
(3.5-дюймовий диск),
8
Оптичний диск для читання/запису,
9
2.88 M
(3.5-дюймовий диск).
/H:heads
Визначає максимальне число головок. Значення параметра heads
повинно лежати між 1
та 99
. Величина за умовчанням залежить від значення, яке ви обрали для параметра /F:factor
.
/I
Визначає електронну сумісність дисковода для 3.5-дюймових гнучких дисків. Використовуйте цей параметр, якщо ROM-BIOS
вашого комп'ютера не підтримує дисководів для 3.5-дюймових гнучких дисків.
/N
Визначає нез'ємний пристрій.
/S:sectors
Визначає число секторів на доріжку, яке підтримується пристроєм. Значення параметра sectors
повинно лежати між 1
та 99
. Величина за умовчанням залежить від значення, яке ви обрали для параметра /F:factor
.
/T:tracks
Визначає число доріжок на сторону, яке підтримується пристроєм. Величина за умовчанням залежить від значення, яке ви обрали для параметра /F:factor
.
FCBS
Визначає число блоків управління файлами (File Control Blocks
FCBs), які MS-DOS може мати відкритими одночасно. Блок управління файлом
це структура даних, яка зберігає інформацію про файл.
FCBS=x
x
Визначає число блоків управління файлами, які MS-DOS
може мати відкритими одночасно. Значення параметра x
повинно лежати між 1
та 255
. Величина за умовчанням 4
.
FILES
Визначає число файлів, до яких MS-DOS може мати доступ одночасно.
FILES=x
x
Визначає число файлів, до яких MS-DOS
може мати доступ одночасно. Величина параметра x
повинна лежати між 8
та 255
. Величина за умовчанням 8
.
INSTALL
Завантажує резидентні програми в пам'ять, коли MS-DOS стартує. Резидентні програми залишаються в пам'яті комп'ютера, доки він працює. Вони можуть використовуватися навіть тоді, коли активні інші програми. Ви можете застосовувати команду INSTALL, щоб завантажити резидентні програми MS-DOS такі, як Fastopen, Keyb, Nlsfunc та Share.
INSTALL=[drive:][path]filename [command-parameters]
[drive:][path]filename
Визначає місцеположення та ім'я резидентної програми, яку ви хочете виконувати.
command-parameters
Визначає параметри програми, яку ви обрали.
LASTDRIVE
Визначає максимальне число дисків, до яких ви можете мати доступ. Визначена вами величина є останнім доступним для MS-DOS диском.
LASTDRIVE=x
x
Визначає назву диска (літеру у проміжку від A
до Z
).
NUMLOCK
Визначає, чи встановлена клавіша NUM LOCK у режим ON або OFF, коли ваш комп'ютер стартує.
NUMLOCK=[ON|OFF]
ON|OFF
Якщо встановлено режим ON
, клавіша NUM LOCK
вмикається при старті MS-DOS
. Якщо встановлено режим OFF
, клавіша NUM LOCK
вимикається.
SHELL
Визначає місцеположення та ім'я командного інтерпретатора, яким буде користуватися MS-DOS. Якщо ви хочете використовувати ваш власний командний інтерпретатор (замість COMMAND.COM), ви можете визначити його ім'я, додаючи команду SHELL у файлі CONFIG.SYS.
SHELL=[[drive:]path]filename [parameters]
[[drive:]path]filename
Визначає місцеположення та ім'я командного інтерпретатора, яким буде користуватися MS-DOS
.
parameters
Визначає будь-які параметри, які можуть бути використані обраним вами командним інтерпретатором.
STACKS
Підтримує динамічне використання стеків даних для управління переривань від пристроїв комп'ютера.
STACKS=n,s
n
Визначає число стеків. Допустимі величини для n
лежать у межах від 0
до 64
і кратні 8
.
s
Визначає розмір (в байтах) кожного стека. Допустимі величини для s
лежать у межах від 0
до 512
і кратні 32
.
SWITCHES
Визначає спеціальні опції в MS-DOS.
SWITCHES=/W /K /N /F
/W
Визначає, що файл WINA20.386
переміщено до директорії, відмінної від кореневої директорії. Цей параметр використовується лише тоді, коли ви запускаєте систему Windows 3.0 фірми Microsoft
і файл WINA20.386
не розміщений у кореневій директорії.
/K
Заставляє покращену клавіатуру поводити себе, як звичайна.
/N
Забороняє використання клавіш F5
або F8
, щоб обійти команди файлів AUTOEXEC.BAT
та CONFIG.SYS
під час старту системи.
/F
Ігнорує 2-секундну затримку після виведення повідомлення "Starting MS-DOS...
" під час старту системи.
Наступні команди, як правило, використовуються у файлі CONFIG.SYS, але можуть вводитися також і в командному рядку.
Це команди
Break Rem Set
Їх ми розглядали раніше, коли мова йшла про внутрішні команди та batch
-файли.
Наступні спеціальні команди використовуються лише при визначенні множинної конфігурації у файлі CONFIG.SYS. При множинній конфігурації визначається меню, яке з'являється під час старту системи. Кожний елемент такого меню відповідає блоку команд або блоку конфігурації (configuration block) у файлі CONFIG.SYS.
Ви можете подивитися приклади використання команд множинної конфігурації, якщо виконаєте команду HELP
та виберете відповідну команду.
INCLUDE
Включає вміст одного блоку конфігурації до іншого.
INCLUDE=blockname
blockname
Визначає ім'я блоку конфігурації, що включається.
MENUCOLOR
Встановлює кольори тексту та фону (заднього плану) для меню множинної конфігурації при старті системи.
MENUCOLOR=x[,y]
x
Визначає колір тексту меню. Ви можете задати величину цього параметра від 0
до 15
(див.
пункт "Значення кольорів").
y
Визначає колір фону (заднього плану). Ви можете задати величину цього параметра від 0
до 15
(див.
пункт "Значення кольорів"). За умовчанням параметр y
приймає значення 0
(чорний).
Значення кольорів
0
Чорний 8
Сірий
1
Синій 9
Яскраво-синій
2
Зелений 10
Яскраво-зелений
3
Ціан 11
Яскраво-ціановий
4
Червоний 12
Яскраво-червоний
5
Фіолетовий 13
Яскраво-фіолетовий
6
Коричньовий 14
Жовтий
7
Білий 15
Яскраво-білий
MENUDEFAULT
Визначає елемент меню множинної конфігурації за умовчанням та встановлює час затримки, після якої він виконується автоматично (при бажанні). Якщо ця команда не використовується, то за умовчанням виконується перший елемент меню.
MENUDEFAULT=blockname[,timeout]
blockname
Визначає елемент меню за умовчанням, який пов'язаний з відповідним блоком конфігурації. Цей блок повинен бути визначеним у файлі CONFIG.SYS
. Коли MS-DOS
при старті системи виводить меню, елемент меню за умовчанням виділяється підвищеною яскравістю і його номер з'являється після підказки "Enter a choice
" ("Введіть вибір").
timeout
Визначає, скільки секунд буде чекати MS-DOS
перед завантаженням системи з конфігурацією за умовчанням. Якщо ви не визначили величину параметра timeout
, MS-DOS
зупиниться, доки не буде натиснута клавіша ENTER
. Ви можете задати величину параметра timeout
в межах від 0
до 90
секунд. При значенні 0
відбудеться автоматичний вибір елемента меню за умовчанням без виведення меню на дисплей.
MENUITEM
Визначає елемент меню множинної конфігурації при старті системи. В меню можна задати до дев'яти елементів. Кожний елемент меню відповідає певному блоку конфігурації.
MENUITEM=blockname[,menu_text]
blockname
Визначає ім'я, пов'язане з блоком конфігурації. Блок повинен бути визначеним в файлі CONFIG.SYS
. Якщо елемент меню вибраний з початкового меню, MS-DOS
виконує команди з відповідного блоку конфігурації. Ім'я блоку може містити до 70
символів, виключаючи проміжки та символи \ / , ; = [ ]
.
menu_text
Визначає текст, який виводиться за бажанням для цього елемента меню. Цей текст може містити до 70
будь-яких символів.
SUBMENU
Визначає елемент початкового меню, при виборі якого виводиться інша множина виборів. Ця команда використовується лише в блоці конфігурації файла CONFIG.SYS.
SUBMENU=blockname[,menu_text]
blockname
Визначає ім'я, пов'язане з блоком конфігурації. Блок повинен бути визначеним в файлі CONFIG.SYS
. Ім'я блоку може містити до 70
символів, виключаючи проміжки та символи \ / , ; = [ ]
.
menu_text
Визначає текст для цього елемента меню, який виводиться за бажанням. Якщо параметр опущено, MS-DOS
виводить ім'я блока як ім'я елемента меню. Цей текст може містити до 70
будь-яких символів.
Файл CONFIG.SYS може містити також наступні спеціальні символи.
;
Визначає, що поточний рядок є коментарем і не повинен виконуватися. Вказаний символ треба ставити на початку рядка. Ви також можете вставляти коментар, використовуючи команду REM
.
?
Визначає, що MS-DOS
запитує підтвердження на виконання поточної команди. Вставте цей символ безпосередньо перед знаком рівності (=
). Наприклад, щоб MS-DOS
запитала підтвердження перед виконанням команди DOS=HIGH, змініть цю команду на DOS?=HIGH.
Приклад файла CONFIG.SYS
COUNTRY = 07, 866, D:\DOS\COUNTRY.SYS
DEVICE = D:\DOS\SETVER.EXE
DEVICE = D:\DOS\HIMEM.SYS
DOS = HIGH
FILES = 40
BUFFERS = 20
SHELL = D:\DOS\COMMAND.COM D:\DOS\ /P
STACKS = 9,256
DEVICE = D:\DOS\DISPLAY.SYS CON=(EGA,,1)
NUMLOCK = OFF
SWITCHES = /f
rem DEVICE = D:\DOS\RAMDRIVE.SYS 72 /E
rem DEVICE = D:\NORTON\DISKREET.SYS
Обхід команд CONFIG.SYS та AUTOEXEC.BAT
Якщо ви маєте системні проблеми, які на вашу думку пов'язані з деякими командами ваших файлів CONFIG.SYS
та AUTOEXEC.BAT
, ви можете обійти (не виконувати) якісь (або всі) команди вказаних файлів.
Щоб обійти всі команди ваших файлів CONFIG.SYS
та AUTOEXEC.BAT
, натисніть клавішу F5
негайно після старту комп'ютера, коли побачите текст "Now starting MS-DOS...
".
Щоб обійти окремі команди файла CONFIG.SYS
, натисніть клавішу F8
. MS-DOS
буде запитувати, чи ви хочете виконувати (або обійти) кожну з команд файла CONFIG.SYS
. Щоб виконати всі команди, що залишились, натисніть F5
. Щоб обійти всі команди, що залишились, натисніть ESC
.
Щоб заборонити розглянуту можливість, додайте команду SWITCHES /N
у вашому файлі CONFIG.SYS
.
|