Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка ОС.doc
Скачиваний:
4
Добавлен:
01.05.2025
Размер:
919 Кб
Скачать
☆

Лабораторна робота № 2

Тема: Робота з командними файлами MS-DOS, конфігурування системи.

Мета: Засвоїти правила побудови командних файлів, навчитися конфігурувати систему MS-DOS.

Завдання:

  1. Побудувати командний файл, що знищує всі файли *.bak на диску А, а потім копіює туди з поточного каталога всі файли з розширенням .exe.

  2. Побудувати командний файл, який форматує диск А, а потім копіює на нього файли з поточного каталогу з вказаним розширенням.

  3. Побудувати командний файл, що компілює усі файли .asm у поточному каталозі (tasm !.!). Використати команду for.

  4. Побудувати командний файл, що шукає у поточному каталозі файл 1.exe, і якщо він є, то перейменовує його в 2.exe і переміщує у кореневий каталог.

  5. Побудувати командний файл, який перейменовує всі файли з розширенням, вказаним у параметрі 1, у файли з розширенням, вказаним у параметрі 2.

  6. Створити файл Config.sys, який би відповідав таким вимогам:

  • кількість одночасно відкритих файлів – 10;

  • кількість буферів для обміну з зовнішніми пристроями – 3;

  • ввімкнення декількох драйверів, при цьому в оперативній пам’яті має бути створено віртуальний диск місткістю 50 Кбайт.

  1. Створити файл Autoexec.bat, який би забезпечував:

  • забезпечення пошуку файлів у кореневому каталозі дисків А: та С:;

  • вказання шляху до файлу Config.sys;

  • виведення на екран запрошення операційної системи;

  • довжину рядка символів на екрані – 100.

Обладнання та матеріали: ПК, ОС MS-DOS, методичні вказівки до лабораторних робіт.

Хід роботи:

  1. Ознайомитись з теоретичними відомостями.

  2. Увімкнути комп’ютер з операційною системою MS-DOS.

  3. Створити командні файли, відповідно до завдання, для роботи з файлами та каталогами.

  4. Створити командні файли, відповідно до завдання, для виконання форматування диску А.

  5. Створити файл конфігурації, відповідно до завдання лабораторної роботи.

  6. Створити файл Autoexec.bat, відповідно до завдання лабораторної роботи

  7. Оформити та захистити звіт лабораторної роботи

Теоретичні відомості

Командні файли MS-DOS

Часто при роботі з програмами виникає потреба багаторазово виконувати однакові (або з невеликими змінами) послідовності команд. Звичайно, ці команди можна виконати з командного рядка.

На допомогу приходять так звані командні (або пакетні) файли, що мають розширення ВАТ (від сл. batch- пакетний). Це звичайні собі текстові файли, що створюються або через copy con, або (найчастіше) у редакторах (з NC, VC, Far’а і т.д.). Головне, щоб ці редактори не записували туди форматуючі та спеціальні символи, що не входять до складу тексту.

Командний файл складається з рядків, що містять команди DOS (так, як їх набирали б вручну), кожен з цих рядків закінчується символами 10 та 13 (кінець рядка та переведення каретки). Його можна виконати, ввівши ім’я (розширення не обов’язково). До речі, якщо у директорії є, скажімо, файли 1.com, 1.bat, 1.exe, то першим буде виконано .com, потім- .exe, а останнім -.bat. При виконанні командного файла буде виконана серія команд, яка в ньому міститься. Щоб зупинити виконання пакетного файла, треба натиснути Ctrl+C. Буде видане повідомлення:

Terminate batch job (y/n) ?

Якщо буде натиснута «y», то виконання буде зупинено.

Файл FIRST.BAT

cls

ndd c: /q

sd c: /fd

Цей файл може бути використаним для автоматичної перевірки диска с: та його оптимізації з переносом каталогів на початок диска (ключ fd). Він містить серію з трьох команд (перша чистить екран).

Запуск його може бути таким:

C:>FIRST <ENTER>

Примітка. Програми ndd.exe та sd.exe повинні бути або у поточній директорії, або у списку директорій з path.

З одного файлу можна викликати інший (просто вказавши його ім’я). Але, коли буде виконано другий, виконання першого не буде продовжено. Щоб уникнути цього, треба використовувати команду call.

Це, так би мовити, вступ. Зараз ми розглянемо специфічні команди, які можна застосовувати у командних файлах.

Команди, що керують виконанням пакетних файлів.

Команда call. Вона використовується для виклику іншого пакетного файла. Коли цей другий файл завершиться, буде продовжено виконання першого.

Приклад:

call second.bat

Виконання командних файлів по одній команді. Для цього треба DOS 6.2 і вище та команда:

COMMAND /Y /C <Ім’я пакетного файла>

Тепер перед виконанням кожної команди буде видаватись запитання на підтвердження виконання.

Дублювання команд на екран. Команди, які викликаються з командного файла, виводяться при виконанні на екран. Щоб уникнути цього, можна на початку рядка поставити символ @ або дати команду echo off. Echo on відновить режим виведення команд.

Розповсюджений прийом- поставити першою командою пакетного файла

@echo off. Тоді жодна з команд не буде виведена.

Повідомлення при виконанні. При виконанні пакетних файлів можна виводити повідомлення за допомогою команди echo.

Наприклад,

echo Добрий день!

виведе повідомлення «Добрий день!», а

echo.

( з крапкою) виведе порожній рядок.

Коментарі у командному файлі. Команда rem дозволяє ставити у файлі коментарі:

rem Ця команда нічого не виконує!

Команда rem- це більше, ніж коментар. Нею можна заборонити виконання команди. Так, наприклад, команда

format a: /q

буде виконана, а

rem format a: /q

буде пропущена.

Переходи у командному файлі здійснює команда GOTO. Приклад командного файла з GOTO:

first.exe

goto PEREHID

.......................

.......................

:PEREHID

second.exe

Тут PEREHID- так звана мітка. Після виконання команди GOTO буде виконана не наступна, а та команда, яка йде після мітки (у нас- після PEREHID). Мітка починається з двокрапки.

Пауза при виконанні командних файлів створюється командою pause. Після її виконання виводиться запрошення натиснути якусь клавішу. Після натиснення виконання продовжується.

Командному файлу можна передавати параметри. Наведемо приклад використання на практиці. Для запуску компілятора MASM треба виконати команду:

masm /B63 /Z /D_Mc <Ім’я файла>. Для спрощення можна створити такий командний файл comp.bat:

masm /B63 /Z /D_Mc %1

%1 означає параметр, який вводиться при запуску командного файла. Тепер, щоб скомпілювати файл F1.ASM, треба написати:

comp f1.asm.

Всього може бути до 9 параметрів (%1- %9). %0 повертає ім’я самого командного файла.

Команда shift зсуває параметри так, що %1 стає %2, %2 стає %3, ..., а %9 приймає значення 10-го параметра, якщо він є. Таким чином, обмеження у 9 параметрів можна зняти. Команду shift можна використовувати кілька разів.

Деякі команди іноді треба виконати для кількох файлів. Для цього можна застосувати команду for. Її формат наступний:

for %x in (список) do (команда),

де x- будь-який символ, крім 0-9, список- кілька імен файлів через пропуск (можна з * та ?), а команда- просто буль-яка команда DOS.

Наприклад:

for %q in (*.cpp) do bcc %q

скомпілює всі файли .сpp у поточному каталозі.

Іноді треба виконати якусь команду в залежності від деякої умови. Для цього існує умовний оператор IF, який має формат:

IF умова команда

Команда, яка вказана після умови, виконується, якщо умова істинна.

Умова- один з виразів:

ERRORLEVEL число - істина тоді, коли код завершення попередньої програми більше або дорівнює заданому числу;

РЯДОК1==РЯДОК2 - істина тоді, коли елементи рядків співпадають;

EXIST file - істина, тоді, коли файл існує;

NOT умова- інвертує умову.

Діалогові командні файли.

У DOS 6.2 та вище з’явилась команда choice, яка виводить на екран питання та в залежності від відповіді по-різному встановлює змінну ERRORLEVEL. Після ключа С йде перелік можливих варіантів відповіді, Т:кількість секунд вказує на затримку перед автоматичним вибором.

Приклад:

choice /C:YN «Запустити NORTON COMMANDER?»

У разі відповіді N ERRORLEVEL буде рівним 2, а Y-1. Далі за допомогою команди IF можна проаналізувати вибір користувача.

Приклад командного файла files.bat, який шукає на дискеті файли з заданим розширенням, якщо їх там немає, то форматує цю дискету «швидким» форматом, з дозволу користувача перевіряє її програмою ndd.

@echo off

rem перевіряємо наявність файлів на дискеті, якщо їх нема, то форматуємо її

if exist a:\*.%1 format a: /q

rem Чи треба перевіряти дискету?

choice /C:YN «Перевірити дискету?»

rem Якщо відповідь була N, то переходимо на завершення роботи

if ERRORLEVEL 2 goto NOCHECK

rem Перевіряємо дискету

ndd a: /c

:NOCHECK

rem Кінець роботи

echo Робота закінчена

Приклад запуску цього файла:

files pas

Конфігурування системи

У ОС DOS існують 2 основні файли конфігурації: CONFIG.SYS та AUTOEXEC.BAT. Вони виконуються під час завантаження системи. У файлі CONFIG.SYS завантажуються драйвери пристроїв (менеджери пам’яті, драйвери екрана, CD-ROM), файл AUTOEXEC.BAT виконується після завантаження COMMAND.COM, встановлюючи path, змінні оточення (команда set), завантажуючи резидентні програми (драйвери кирилиці, миші, компакт-дисків, дисковий кеш). У кінці часто ставиться команда виклику оболонки (Dos Navigator, Norton/Volkov Commander).

Файл CONFIG.SYS. Цей файл завантажується після завантаження ядра MS-DOS (підпрограм в/в IO.SYS та модуля обробки функцій DOS MSDOS.SYS) і перед стартом COMMAND.COM. Його можна редагувати у будь-якому текстовому редакторі. Команди файла CONFIG.SYS завантажують драйвери та визначають, як буде працювати hardware. Наведемо основні команди цього файла.

Сountry встановлює параметри країни (формат дати, часу, чисел, сортування)

Device завантажує драйвер у «звичайну» пам’ять:

device=c:\windows\himem.sys /testmem:off

DeviceHigh завантажує драйвер у «верхню» пам’ять (для цього вона повинна бути встановлена та запущений менеджер (EMM386.EXE або QEMM).

devicehigh=c:\mouse\mouse.sys

Команда DOS вказує, чи буде ОС використовувати HMA (вищу пам’ять) та мати доступ до UMB (верхньої пам’яті). Для цього повинен бути запущений драйвер XMS (розширеної пам’яті) та EMM386 або QEMM замість обох.

dos=high, umb

Rem - коментує рядок файла.

Set - встановлює значення змінної оточення (типу PROMPT, TEMP).

Switches- вказує спеціальні опції.

Файл AUTOEXEC.BAT. Команди цього файлу такі самі, як і всіх пакетних файлів. Він виконується після запуску командного процесора (command.com), завантажуючи резидентні програми (TSR), встановлюючи параметри, і при потребі запускає оболонку.

Контрольні питання:

  1. Для чого потрібні командні файли?

  2. Як викорисновується команда echo?

  3. Що роблять файли config.sys, autoexec.bat?

  1. Як створити меню у командних файлах?

Література:

    1. Руденко В.Д., Макарчик О.М., Патланжоглу М.О. Практичний курс інформатики / За ред. Мадзігона В.М. – Фенікс, 1997. – 304 с., стор. 43-46.

    2. Тхір І.Л., Калушка В.П., Юзьків А.В. Посібник користувача ПК. – Тернопіль: Технічний коледж ТДТУ, 1998, - 320 с.: іл., стор. 268-333.