Командные файлы

Лабораторная

?

МИНИСТЕРСТВО ОБЩЕГО И ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ ЭЛЕКТРОНИКИ И МАТЕМАТИКИ

КАФЕДРА ЭЛЕКТРОННО-ВЫЧИСЛИТЕЛЬНОЙ АППАРАТУРЫ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ОТЧЕТ

 

 

по лабораторной работе “Командные файлы”

Дисциплина “Системное ПО ЭВМ”

 

 

 

 

 

 

Выполнили студенты группы С-45.

 

 

 

Преподаватель проф. Зарудный Д. И.

 

 

 

 

 

 

Москва 1998

 

 

 

Оглавление

 

 

 

  • Введение

  • Рабочее задание
  • Краткие сведения о командных файлах
  • Практическая часть

  • Тексты программ
  • Протокол работы программ
  • Заключение
  •  

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    1.

    Введение

     

     

    Командные файлы - средство

    MS-DOS, позволяющее автоматизировать часто выполняемые действия пользователя. Командные файлы могут выполнять довольно сложную последовательность действий. Основой командных файлов служат команды MS-DOS.

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    2. Рабочее задание

     

     

     

    1. Создать командный файл
    2. BATCH1.BAT, выполняющий действия:

      1. Отключение режима отображения на экране выполняемой команды
      2. Вывод на экран: "Копирование и удаление файла"
      3. Создание на диске
      A: каталога DIR1, и в нем создание каталога DIR2

    3. Копирование файла с именем
    4. TEXT1.TXT из каталога C:ALPHABETTAGAMMA в файл с именем TEXTNEW.TXT в каталоге A:DIR1DIR2

    5. Удаление исходного файла
    6. Вывод на экран:
    7. “Файл скопирован и удален”

    8. Пауза до нажатия клавиши

  • Создать командный файл с именем SUMMA.BAT, выполняющий действия:
    1. Вывод на экран “Объединение и переименование файлов”
    2. Объединение содержимого файлов
    3. ANEW.PAS и BNEW.PAS, находящихся в каталоге C:D1, в файл CNEW.PAS в каталоге C:D2

    4. Вывод содержимого файла
    5. CNEW.PAS на экран

    6. Ожидание нажатия клавиши
    7. Переименование файлов
    8. ANEW.PAS и BNEW.PAS в AOLD.PAS и BOLD.PAS соответственно.

    9. Вывод на экран: "Задание выполнено"

  • Создать командный файл с именем _EXIST.BAT, выполняющий действия:
    1. Вывод на экран “Копирование файла в случае его отсутствия на дискете”
    2. В случае отсутствия файла SIMP.FOR на диске A: скопировать его туда из каталога C:FOR и вывести на экран: "Файл simp.for скопирован на диск A:"
    3. Если файл
    4. SIMP.FOR уже есть на диске, вывести на экран: "Файл simp.for уже есть на дискете"

     

     

  • Создать командный файл с именем
  • BATCH4.BAT, выполняющий различные действия в зависимости от переданного параметра в строке вызова:

    1. Создание каталога
    A:MYDIR и копирование в него всех .com и .exe файлов с диска C:

  • Создание в каталоге
  • A:MYDIR каталога NEWDIR и копирование в него всех .com файлов с диска C:

  • Вывод на экран содержимого каталога A:MYDIR
  • Удаление каталога
  • A:MYDIRNEWDIR

  • Удаление каталога
  • A:MYDIR

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    3. Краткие сведения о командных файлах

     

     

    Командный файл состоит из последовательности строк, в каждой из которых может находиться либо вызов программы, либо вспомогательные команды. Большинство строк командного файла обрабатываются

    DOS так же, как если бы они вводились пользователем в командной строке. Вспомогательные команды служат для управления ходом работы командного файла. Наиболее распространенные вспомогательные команды:

     

    ЕСНО

     

    При формате вызова

    ECHO OFF отменяет вывод строк командного файла на экран при выполнении. Команда ECHO ON возобновляет их вывод на экран. Большинство командных файлов начинаются со строки @ECHO OFF. Символ "@" служит для отмены вывода на экран строки, следующей непосредственно за ним.

    В остальных случаях команда ЕСНО выводит на экран текст, следующий за ней в строке.

     

    GOTO

     

    Применяется для перехода к определенной строке командного файла. При выполнении команды

    GOTO LABEL происходит переход к строке, начинающейся с текста :LABEL.

     

    IF

     

    Служит для проверки условия во время выполнения командного файла.

    Формат команды:

    IF УСЛОВИЕ КОМАНДА .

    Команда будет выполнена в том случае, если условие будет истинно. Однако, допуст м формат

    IF NOT УСЛОВИЕ КОМАНДА. При этом команда выполнится, если условие ложно. В качестве команды часто используется GOTO.

     

     

     

     

    В качестве условия могут быть использованы выражения:

    EXIST

    ФАЙЛ
    - истинно в том случае, если указанный файл существует.

    СТРОКА1 = = СТРОКА2

    - истинно, если строки совпадают. Обычно в одну из строк входят параметры командного файла.

     

    PAUSE

     

    Приостанавливает выполнение командного файла до нажатия клавиши

    any. Если нажать клавиши Ctrl+Break, выполнение командного файла будет прервано.

     

    REM

     

    Строки, начинающиеся с

    REM, при выполнении командного файла игнорируются. В них можно записывать комментарии.

     

    FOR

     

    Формат команды:

    FOR %%x IN (СПИСОК) DO КОМАНДА

    При выполнении КОМАНДА будет выполнена для каждого файла из списка. Эту команду можно использовать, если программа, которую нужно вызвать, не поддерживает "джокеров" - символов "*" и "?" в именах файлов.

    Пример: FOR %%A IN (*.TXT) DO MORE<%%A

    Эту команду можно использовать и в командной строке, но при этом вместо %%х нужно писать

    .

     

    Параметры командного файла - слова, идущие при его вызове в командной строке вслед за именем самого файла.

    Пример

    - compare.bat example.txt. example2.txt

    В командном файле параметры указываются с помощью выражений , где х - цифра от 1 до 9.

    %0 означает имя самого командного файла. Так, если в приведенном выше примере файл compare.bat содержит строку type %1 , то во время выполнения она заменится на type example.txt.

     

     

     

    Некоторые команды MS-DOS, необходимые в написании командных файлов:

    Смена текущего каталога осуществляется командой

    CD

    имя_каталога

    Создание каталога осуществляется командой

    MD

    имя_каталога.

    Копирование файла - командой

    COPY

    имя_файла1 имя_файла2.

    Удаление файла - командой

    DEL

    имя_файла.

    Удаление каталога – командой

    DELTREE

    имя_каталога

    Файлы объединяются командой

    COPY

    файл1 + файл2 файл3

    после выполнения которой файл3 содержит данные, находившиеся в файлах файл1 и файл2

    .

     

     

     

     

    4. Практическая часть

    4.1 Тексты программ

     

  • Файл
  • BATCH1.BAT

     

    @echo offecho Копирование и удаление файла a:mkdir a:dir1mkdir a:dir1dir2copy c:alphaetagamma

    ext1.txt a:dir1dir2 extnew.txt

    del c:alphaetagamma ext1.txt

    echo Файл скопирован и удален

    pause

     

  • Файл
  • SUMMA.BAT

     

    @echo offecho Объединение и переименование файлов copy c:d1anew.pas + c:d1new.pas c:d2cnew.pastype c:d2cnew.paspause

    rename c:d1anew.pas aold.pas

    rename c:d1new.pas bold.pas

    echo Задание выполнено

     

  • Файл
  • _EXIST.BAT

     

    @echo offecho Копирование файла в случае его отсутствия на дискете if not exist a:simp.for goto met1echo Файл simp.for уже есть на дискете

    goto met2

    :met1

    copy c:forsimp.for a:simp.for

    echo Файл simp.for скопирован на диск A:

    :met2

     

     

  • Файл BATCH4.BAT
  •  

    @echo offgoto m%1goto qend:m1a:mkdir a:mydircopy c:*.com a:mydircopy c:*.exe a:mydir

    goto qend

    :m2

    a:

    cd a:mydir

    mkdir a:mydir ewdir

    copy c:*.com a:mydir ewdir

    goto qend

    :m3

    dir a:mydir

    goto qend

    :m4

    deltree a:mydir ewdir

    goto qend

    :met5

    deltree a:mydir

    :qend

     

     

     

     

     

     

     

     

     

     

     

     

  • Протокол работы программ
  •  

  • Файл
  • BATCH1.BAT

     

    Копирование и удаление файла

    1 файл(а,ов) скопировано

    Файл скопирован и удален

    Нажмите любую клавишу . . .

     

  • Файл
  • SUMMA.BAT

     

    Объединение и переименование файлов

    c:d1anew.pas

    c:d1new.pas

    1 файл(а,ов) скопировано

    {

    Содержимое файла anew.pas }

    {

    Содержимое файла bnew.pas }

    Нажмите любую клавишу . . .Задание выполнено

     

  • Файл
  • _EXIST.BAT

     

    а) файл отсутствует на дискете:

    Копирование файла в случае его отсутствия на дискете

    1 файл(а,ов) скопировано

    Файл

    simp.for скопирован на диск A:

     

    б) файл есть на дискете:

    Копирование файла в случае его отсутствия на дискете

    Файл

    simp.for уже есть на дискете

    4.

    Файл BATCH4.BAT

     

    а) запуск с параметром 1

     

    {

    список из 10 .com файлов }

    10 файл(а,ов) скопировано

    {

    список из 8 .exe файлов }

    8

    файл(а,ов) скопировано

     

    б) запуск с параметром 2

     

    {

    список из 10 .com файлов }

    10

    файл(а,ов) скопировано

     

    в) запуск с параметром 3

     

    {

    вывод содержимого каталога A:MYDIR }

     

     

    г) запуск с параметром 4

     

    Удалить каталог

    “a:mydir ewdir” вместе со всеми подкаталогами? [Y(да)/N(нет)] y

    Удаление

    a:mydir ewdir...

     

    д) запуск с параметром 5

     

    Удалить каталог

    “a:mydir” вместе со всеми подкаталогами? [Y(да)/N(нет)] y

    Удаление

    a:mydir...

     

     

     

     

     

     

  • Заключение
  •  

    Выполненные задания позволяют сделать вывод о целесообразности применения командных файлов в случае необходимости использования часто повторяющихся действий. Командные файлы являются наиболее удачным решением для реализации простых алгоритмов, связанных с операциями над файлами. Однако для реализации сложных алгоритмов язык командных файлов может оказаться недостаточным

    .

     

     

    Похожие работы