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

Сдавался/использовался1998г., Московский государственный институт электроники и математики
Загрузить архив:
Файл: 240-1437.zip (8kb [zip], Скачиваний: 107) скачать

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

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

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

ОТЧЕТ

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

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

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

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

Москва 1998

Оглавление

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

    1. Тексты программ
    2. Протокол работы программ

  • Заключение
  • Введение

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

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

    1. Создать командный файл BATCH1.BAT, выполняющий действия:
      1. Отключение режима отображения на экране выполняемой команды
      2. Вывод на экран: "Копирование и удаление файла"
      3. Создание на диске A: каталога DIR1, и в нем создание каталога DIR2
      4. Копирование файла с именем TEXT1.TXT из каталога C:ALPHABETTAGAMMA в файл с именем TEXTNEW.TXT в каталоге A:DIR1DIR2
      5. Удаление исходного файла
      6. Вывод на экран: Файл скопирован и удален
      7. Пауза до нажатия клавиши

    2. Создать командный файл с именем SUMMA.BAT, выполняющий действия:
      1. Вывод на экран Объединение и переименование файлов
      2. Объединение содержимого файлов ANEW.PAS и BNEW.PAS, находящихся в каталоге C:D1, в файл CNEW.PAS в каталоге C:D2
      3. Вывод содержимого файла CNEW.PAS на экран
      4. Ожидание нажатия клавиши
      5. Переименование файлов ANEW.PAS и BNEW.PAS в AOLD.PAS и BOLD.PAS соответственно.
      6. Вывод на экран: "Задание выполнено"

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

    4. Создать командный файл с именем BATCH4.BAT, выполняющий различные действия в зависимости от переданного параметра в строке вызова:
      1. Создание каталога A:MYDIR и копирование в него всех .com и .exe файлов с диска C:
      2. Создание в каталоге A:MYDIR каталога NEWDIR и копирование в него всех .com файлов с диска C:
      3. Вывод на экран содержимого каталога A:MYDIR
      4. Удаление каталога A:MYDIRNEWDIR
      5. Удаление каталога 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 Тексты программ

    1. Файл BATCH1.BAT
    2. @echo offecho Копирование и удаление файла a:mkdir a:dir1mkdir a:dir1dir2copy c:alphaetagamma ext1.txt a:dir1dir2 extnew.txt

      del c:alphaetagamma ext1.txt

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

      pause

    3. Файл 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 Задание выполнено

    1. Файл _EXIST.BAT
    2. @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

    3. Файл BATCH4.BAT
    4. @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

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

  • Файл 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...

    1. Заключение

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