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

3. Подготовка к работе

3. 1. Изучить теоретические сведения и составить план выполнения лабораторной работы.

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

Подготовить и набрать командный файл, реализующий выполнение следующих алгоритмов:

1) Освободить пространство в текущей директории, для чего удалить файлы, имеющие расширения .OBJ и .EXE, с именами, вводимыми в качестве фактических параметров, в случае существования исходных файлов с расширением .С

2) Создавать резервную копию исходных файлов. Копировать все исходные файлы с расширением .С в каталог указанном в качестве фактического параметра. Если параметр не задан - создавать в текущей директории директорию bak и копировать всё туда. Если каталог с резервной копией уже существует - спросить у пользователя разрешение перезаписать(см. команду choice)

3) Восстанавливать исходные файлы из резервной копии. Из каталога, имя которого указано в качестве формального параметра, копировать все файлы с расширение .С в текущий каталог. Если параметр неуказан то копировать файлы из директории bak в текущем каталоге. Если директории несуществует - выдавать ошибку, выводить помошь а завершить работу.

4) Слить файлы в один:

В качестве параметров принимать имена файлов и слить все эти файлы в файл имя которого задано последним. Если такой файл уже существует - запросить у пользователя разрешение на перезавись(см. команду choice). Если хоть один из файлов несуществует - завершить работу с ошибкой и выводом помощи.

5) Создать списки файлов в директориях:

В качестве параметров принимать имена директорий. В каждой директории создать файл files.bbs в котором хранится список имен файлов в этой директории отсортированный по алфавиту. При отсутствии директории - выдавать ошибку, но продолжать обработку следующей директории.

6) Создать общий списк файлов в директориях:

В качестве параметров принимать имена директорий. В каждой директории искать файл files.bbs в котором хранится список имен файлов. В текущей директории создать файл all_files.txt в котором будет хранится имена директорий и файлы в них находящиеся. При отсутствии директории – выдавать ошибку, но продолжать обработку следующей директории. Если файла files.bbs нет в директории - создать его.

7) Найти текст во всех исходных файлах:

В качестве 1-го параметра получить слово и найти его во всех файлах с расширением .C. Поиск делать в каталогах указанных в качестве последующих параметров. Если каталог отсутствует - выводить сообщени об ошибке, но продолжать обрабатывать следующий каталог. Результат выводить с помощью команды more.

8) В директории, имя которой указано в качестве 1-го параметра, создать папки с именами переданными в качестве последующих параметров. Скопировать файлы из текущей директории, имеющие расширения, совпадающие с именами подкаталогов, в подкаталоги, а все остальные файлы - в корневой каталог указанный в качестве 1-го параметра.

3.3 Требования к выполнению заданий к лабораторной работе

1. Задание выбирается таким образом

Номер варианта соответствует номеру списка группы. Если номер в списке - 9, берем вариант 1, 10 – 2 и т.д.).

2. Пакетный файл должен выводить на экран следующую информацию и заканчивать работу:

а) Ф.И.О. студента

б) номер зачетки

в) номер группы

г) номер задания

(см. пример к команде if)

3. Пакетный файл должен правильно обрабатывать отсутствие или неправильное кол-во фактических параметров. Если не указано в задании, при отсутствии параметров выдавать сообщение об ошибке и помощь по использованию пакетного файла, после чего заканчивать работу.

4. Кол-во параметров неограничено (см. команду shift), если в задании неуказанно их кол-во и последовательность.

5. Не выводить на экран лишней информации, если не указано в задании обратное (см. команду echo и пример перенаправения вывода на устройство nul для подавления вывода лишней информации на экран(пункт 1))

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]