Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

1.Розробка алгоритму і тексту командного файлу



1.Розробка алгоритму і тексту командного файлу

 

1.1Розгорбка блок схеми алгоритму командного файлу і його описання

1.1.1 Блок схема командного файлу меню і її описання

 

Рис­.1.1‒ Блок схема меню командних файлів

Основні функції покладені на даний командний файл полягають в тому щоб об’єднати всі наші командні файли в одну систему і тим самим спростити роботу з ними.

Розглянемо дану блок-схему детально, по блокам:

1.Початок - цей блок відповідає за початок роботи командного файлу.

2.Дія 1 – Виконує перевірку чи вибрана перша дія, якщо вибрана перша дія то буде виконаний перехід на перший командний файл, і він почне виконуватися.
В тому випадку якщо він не вибраний іде перехід до перевірки наступної дії.

3.Дія 2 – Виконує перевірку чи вибрана друга дія якщо вибрана друга дія то буде виконаний перехід на другий командний файл, і він почне виконуватися. В тому випадку якщо він не вибраний іде перехід до перевірки наступної дії.

4.Дія 3 – Виконує перевірку чи вибрана третя дія якщо вибрана третя дія то буде виконаний перехід на третій командний файл, і він почне виконуватися. В тому випадку якщо третя дія не вибрана іде перехід до блоку «Такої дії не існує»

5.Такої дії не існує – цей блок виводить повідомлення на екран і сповіщає нас що ніяка дія не була вибрана.
6.Кінець – Блок який відповідає за закінчення роботи командного файлу.

 

1.1.2 Блок схема до першого командного файлу та її описання

Рис­.1.2‒ Блок-схема першого командного файлу

Основне завдання даного командного командного файлу перейменування файлів у нові імена що вказуються.

Розглянемо блок-схему командного файлу детально по кожному блоку: 1.Початок - цей блок відповідає за початок роботи командного файлу.

2.Відключення повідомлень – відключення повідомленнь сповіщеняя про виконання кожної дії командного файлу

3.Існує каталог? – цей блок проводить перевірку чи існує той каталог який задає користувач. Якщо так то іде перехід на виконання наступного блоку якщо ні то видає повідомлення про помилку.

4.Перехід на каталог – виконується перехід на вказаний каталог

5.Існує файл?- перевіряє чи існує той файл який вказав користувач. Якщо так то іде перехід на наступну дію якщо ні то видає повідомлення про помилку.

6.Перейменування його - виконується перейменування вибраного користувачем файлу.



7.Є ще файли?- Перевірка чи існують ще введені файли з новими іменами для перейменування

8.Кінець роботи! – виводить повідомлення на екран про закінчення роботи командного файлу.

9. Кінець – Блок який відповідає за закінчення роботи командного файлу.

 

1.1.2 Блок схема до другого командного файлу та її описання

Основна задача даного командного файлу полягає у встановленні атрибутів на вказані файли.

Розглянемо блок-схему командного файлу детально по кожному блоку: 1.Початок - цей блок відповідає за початок роботи командного файлу.

2.Відключення повідомлень – відключення повідомленнь сповіщеня про виконання кожної дії командного файлу

3.Існує каталог? – цей блок проводить перевірку чи існує той каталог який задає користувач. Якщо так то іде перехід на виконання наступного блоку якщо ні то видає повідомлення про помилку.

Рис­.1.3‒ Блок схема другого командного файлу

4.Перехід на каталог – виконується перехід на вказаний каталог

5.Існує файл?- перевіряє чи існує той файл який вказав користувач. Якщо так то іде перехід на наступну дію якщо ні то видає повідомлення про помилку.

6.Встановити атрибут - виконується встановлення атрибуту на вибраний користувачем файл.

7.Є ще файли?- Перевірка чи існують ще файли та вказані атрибути для встановлення на них.

8.Кінець роботи! – виводить повідомлення на екран про закінчення роботи командного файлу.

9. Кінець – Блок який відповідає за закінчення роботи командного файлу.

 

1.1.4 Блок схема третього командного файлу та її описання

Основна задача даного командного файлу полягає у копіюванні файлів з вказаним розширенням на вказаний зовнішній носій.

Розглянемо блок-схему командного файлу детально по кожному блоку: 1.Початок - цей блок відповідає за початок роботи командного файлу.

2.Відключення повідомлень – відключення повідомленнь сповіщеняя про виконання кожної дії командного файлу

3.Існує каталог? – цей блок проводить перевірку чи існує той каталог який задає користувач. Якщо так то іде перехід на виконання наступного блоку якщо ні то видає повідомлення про помилку.

4.Перехід на каталог – виконується перехід на вказаний каталог

5.Існує файл?- перевіряє чи існує той файл який вказав користувач. Якщо так то іде перехід на наступну дію якщо ні то видає повідомлення про помилку.

6.Копіювання - виконується копіювання файлу із заданим розширенням на вказаний зовнішній носій.

 

 

Рис­.1.4‒ Блок схема третього командного файлу

7.Кінець роботи! – виводить повідомлення на екран про закінчення роботи командного файлу.

8. Кінець – Блок який відповідає за закінчення роботи командного файлу.

 

 

1.2 Розробка програми командного файлу і її описання

1.2.1 Текст командного файлу меню

@echo off

cls

@if %1==\? goto z

if %1==1 goto act1

if %1==2 goto act2

If %1==3 goto act3

if *%1==* goto end

:act1

cls

echo program 1

if exist %2 goto a

if not exist goto err

:a

cd %2

:begin

if *%3==* goto err3

set A=%3

if exist %A% goto ren

if not exist %A% goto err4

REM переход если файл существует

:ren

shift /3

if *%3==* goto err1

set B=%3

if exist %B% goto err2

ren %A% %B%

echo you rename %A% to %B%

goto next

REM

:err

echo net takoi directorii

goto end

REM не ввели имя 2 го файла

:err1

echo vi ne vveli novoe im'a

goto end

REM если файл с именем в которое хотим переименовать существует

:err2

echo pereimenovanie ne vozmozno fail c imenem %B% uze exist

goto next

REM не ввели имя 1 го файла

:err3

echo ne vveli imya 1 go faila

goto end

REM если первого файла не существует

:err4

echo file %A% not exist

shift /3

goto next

REM проверочка будут ли у нас еще файлы на переименование

:next

shift /3

if *%3==* goto end

goto begin

:z

@echo ОНПУ

@echo Кафедра РТС

@echo Курсова робота

@echo студента групи

@echo РТ-121

@echo Шкурата Тарас Тарасовича

goto p

 

:act2

cls

echo Program 2

echo -------------------------------------------------

REM проверка на существование директории с папками

if *%2==* goto end

if exist %2 goto dir

if not exist %2 goto err21

REM если директория существует то переход на эту метку

:dir

cd %2

echo You enter directiry %2

echo -------------------------------------------------

REM переход только в тех случаях если меняется файл на котороый ставятся атрибуты

if *%3==* goto err22

:pr1

echo %3

echo -------------------------------------------------

REM переход в тех случаях если файл не меняется а изменен атрибут

:pr

if not exist %2%3 goto err33

if *%4==* goto sh

if %4==S goto start

if %4==H goto start

if %4==A goto start

if %4==R goto start

goto sh

REM установка атрибутов(посмотреть в конспекте использование цикла for)

:start

attrib %2%3 +%4

REM echo -------------------------------------------------

echo You attrib +%4 on file %3

shift /4

goto pr

REM если нет директории

:err21

echo your directiry %2 not exist

goto end

REM

:err22

echo ne vveli ima file

goto end

REM если не существует файла

:err33

echo File %3 not exist

echo -------------------------------------------------

REM ниже метки осуществляется переход на другой файл пропуская атрибуты файла которго не существует

:perr

shift /3

if *%3==* goto end

if %3==S goto perr

if %3==R goto perr

if %3==A goto perr

if %3==H goto perr

goto pr1

REM метка когда все атрибуты установлены и надо сменить файл(введено вывод атрибутов файла для наглядности ч о все дейсвительно установилось)

:sh

echo -------------------------------------------------

echo Attributes file %3

attrib %2%3

shift /3

echo -------------------------------------------------

if %3*==* goto end

goto pr1

:act3

if exist %2 goto k

if not exist %2 goto l

:k

cd /d %2

if exist *.%3 goto m

if not exist *.%3 goto l

:m

copy *.%3 %4

goto end

:l

echo

goto p

echo end

:end

:p

pause

 

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

Кожний командний файл має мітку «:act» а цифра вказує який саме командний файл потрібно виконати. Також в випадку якщо не був вибраний ні один командний файл той йде перехід на мітку «:end» після чого виводиться повідомлення про закінчення роботи програми. Також всім відома команда «@ echo off» відключає відображення повідомлень про виконання кожної дії, а команда «cls» очищає те що відображено на екрані. Команда «echo» виводить повідомлення на екран яке ми вказуємо, команда «pause» призупинення виконання пакетного файлу і відображає повідомлення про стан виконання командного файлу. Всі інші команди які є в тексті даного командного файлу будуть пояснені далі при описанні кожного командного файлу окремо.

Також для того щоб дізнатися довідкову інформацію про командний файл потрібно ввести «\?» і вона буде виведена на монітор.

 

1.2.2 Текст командного файлу який виконує перейменування файлів у нові імена що вказуються

@ echo off

echo program 1

if exist %2 goto a

if not exist goto err

:a

cd %2

:begin

if *%3==* goto err3

set A=%3

if exist %A% goto ren

if not exist %A% goto err4

REM переход если файл существует

:ren

shift /3

if *%3==* goto err1

set B=%3

if exist %B% goto err2

ren %A% %B%

echo you rename %A% to %B%

goto next

REM

:err

echo net takoi directorii

goto end

REM не ввели имя 2 го файла

:err1

echo vi ne vveli novoe im'a

goto end

REM если файл с именем в которое хотим переименовать существует

:err2

echo pereimenovanie ne vozmozno fail c imenem %B% uze exist

goto next

REM не ввели имя 1 го файла

:err3

echo ne vveli imya 1 go faila

goto end

REM если первого файла не существует

:err4

echo file %A% not exist

shift /3

goto next

REM проверочка будут ли у нас еще файлы на переименование

:next

shift /3

if *%3==* goto end

goto begin

Даний текст командного файлу несе в собі таке смислове навантаження:

Відключення відображення повідомлень на екран про виконання кожної дії

Перевірка існування першого параметру а саме каталогу в якому лежить потрібний нам файл

Якщо існує перший параметр то переходимо на мітку:а

Якщо не існує перший параметр то переходимо на мітку:еrr

Далі йде вказання каталогу

Перевірка існування другого параметру а саме файла який будемо перейменовувати

Якщо файл існує перехід на мітку:ren

Якщо файл не існує то перехід на мітку:еrr4

Якщо не введене нове ім’я то йде перехід на мітку:err1

Перейменування файлу з вказанням початкового та нового ім’я файлу

Перевірка чи є ще вказані файли з новими ім’ями для перейменування

Якшо є то йде перехід на мітку:begin після чого повторюється все вище описане, якщо не має вказаних ще файлі то виконується перехід на мітку:end

Перехід на мітку:end

При переході на мітку:err виводиться повідомлення що не має такої директорії і виконується перехід на мітку:end і виконується завершення роботи

При переході на мітку:err1 виводиться повідомлення що не введено нове ім’я файла і виконується перехід на мітку:end і виконується завершення роботи

При переході на мітку:err4 виводиться повідомлення що не має такого файлу і виконується перехід на мітку:end і виконується завершення роботи

 

 

1.2.3 Текст командного файлу який виконує встановлення атрибутів на вказаний файл

 

@echo off

cls

REM проверка на существование директории с папками

if *%2==* goto end

if exist %2 goto ttt

if not exist %2 goto rrr

REM если директория существует то переход на эту метку

:ttt

cd %2

echo You enter directiry %1

echo -------------------------------------------------

REM переход только в тех случаях если меняется файл на котороый ставятся атрибуты

if *%3==* goto ppp

:pr12

echo %3

echo -------------------------------------------------

REM переход в тех случаях если файл не меняется а изменен атрибут

:pr11

if not exist %1%2 goto mmm

if *%4==* goto sh

if %4==S goto st1

if %4==H goto st1

if %4==A goto st1

if %4==R goto st1

goto shh

REM установка атрибутов

:st1

attrib %2%3 +%4

REM echo -------------------------------------------------

echo You attrib +%4 on file %3

shift /3

goto pr11

REM если нет директории

:rrr

echo your directiry %2 not exist

goto end

REM

:ppp

echo ne vveli ima file

goto end

REM если не существует файла

:mmm

echo File %3 not exist

echo -------------------------------------------------

REM ниже метки осуществляется переход на другой файл пропуская атрибуты файла которго не существует

:perr1

shift /2

if *%3==* goto end

if %3==S goto perr1

if %3==R goto perr1

if %3==A goto perr1

if %3==H goto perr1

goto pr12

REM метка когда все атрибуты установлены и надо сменить файл(введено вывод атрибутов файла для наглядности ч о все дейсвительно установилось)

:shh

echo -------------------------------------------------

echo Attributes file %3

attrib %2%3

shift /2

echo -------------------------------------------------

if %3*==* goto end

goto pr12

:end

Даний текст командного файлу має таке описання:

Відключення відображення повідомлень на екран

Перевірка існування першого параметру а саме каталогу в якому лежить потрібний нам файл

Якщо існує перший параметр то переходимо на мітку:dir

Якщо не існує перший параметр то переходимо на мітку:еrr21

Далі йде вказання каталогу

Після чого йде перевірка чи вказаний файл якщо ні то йде перехід на мітку:err22 після якої йде вивід повідомлення про те що не введено ім’я файлу.
Потім йде перевірка наявності вказаних атрибутів і встановлення вказаних атрибутів на вказані файли. Після чого виконується перевірка чи є ще файли на які потрібно встановлювати атрибути. Якщо є то все виконується знові якщо ні то перехід на мітку:end і виконується завершення закінчення роботи командного файлу.

1.2.4 Текст командного файлу який виконує копіювання файлі з вказаним розширенням на вказаний зовнішній носій

 

@echo off

if exist %1 goto a

if not exist %1 goto e

:a

cd %1

if exist *.%2 goto b

if not exist *.%2 goto e

:b

copy *.%2 %3

goto end

:e

echo error

goto p

:end

echo end

:p

pause

 

Даний текст командного файлу має таке описання:

Відключення відображення повідомлень на екран

Перевірка існування першого параметру а саме каталогу в якому лежить потрібний нам файл

Якщо існує перший параметр то переходимо на мітку:а

Якщо не існує перший параметр то переходимо на мітку:е

Далі йде вказання каталогу

Перевірка існування другого параметру а саме файлу на який будемо встановлювати атрибут

Якщо файл існує перехід на мітку:b

Якщо файл не існує то перехід на мітку:е

Копіювання файлу з вказанням розширення та вказанням зовнішнього носія на який виконується копіювання

Перехід на мітку:end

Відображення на екрані повідомлення про кінець роботи програми

При переході на мітку:е ми отримаємо на екрані повідомлення про помилку на перейдемо на мітку:р після чого виконається команда «Pause» яка виконує призупинення виконання пакетного файлу і відображає повідомлення про стан виконання командного файлу

 

1.3 Контрольний приклад виконання роботи командного файлу
1.3.1 Приклад виконання командного файлу перейменування файлу

 

 

Рис­.1.5‒ Приклад виконання командного файлу в пакетному режимі


Тут видно те що введений потрібний командний файл меню,номер потрібної програми ім’я файлу який будемо перейменовувати та нове ім’я файлу.
На рисунку 1.5.1 який нижче відображається повідомлення про успішний кінець роботи командного файлу та сам уже перейменований файл

 

 

Рис­.1.5.1‒ Приклад виконаного командного файлу

1.3.2 Контрольний приклад виконання командного файлу встановлення атрибуту на вказаний файл.

 

Рис­.1.6‒ Приклад виконання командного файлу на встановлення атрибуту

 

В командній строчці вказаний командний файл меню, номер командного файлу який потрібен в меню,диск де розміщений потрібний нам файл його ім’я та атрибут який треба встановити.
На рисунку 1.6.1 який знаходиться нижче представлений результат виконання цього командного файлу

 

 

Рис­.1.6.1‒ Виконаний командний файл

 

У вказані атрибуту був вибраний атрибут скритий в чом ми і переконуємось так як зникла папка з назвою «2013».Це свідчить про те що програма успішно працює.

1.3.3 Контрольний приклад виконання командного файлу для копіювання файлів з розширенням що вказується на зовнішній носій що вказується

 

 

Рис­.1.7‒ Приклад виконання командного файлу копіювання

 

Завдання даного командного файлу копіювання файлів з розширенням що вказується на зовнішній носій що вказується. Я задав розширення bat та копіювання на флеш-носій який має назву G:
На рисунку 1.7.1 представлений результат успішно виконаних дій.

 

 

Рис­.1.7.1‒ Виконаний командний файл копіювання

Рис­.1.8‒ Приклад виклику довідки про командний файл

 

Рис­.1.8.1‒ Приклад визваної довідки

 

В моєму командному фалі довідка викликається за допомогою «\?» і виводить інформацію про студента який виконав дану роботу. На рисунку 1.8.1 зображено довідку російскими літерами так як при розробці командного файлу на власній ЕОМ я використовув текстовий редактор AlkelPad де мав змогу встановити кодування тексту за стандартом 866(ОЕМ-русская) яка дає змогу виводи к командній строчці російскі літери.

З усього вище сказаного та представленого можна зробити висновок що як командний файл меню так і командні файли програм працюють і успішно виконують потрібні та вказані в них дії.

 

 


Дата добавления: 2015-09-29; просмотров: 24 | Нарушение авторских прав




<== предыдущая лекция | следующая лекция ==>
Зміст господарської операції | Теоретические сведения .3

mybiblioteka.su - 2015-2024 год. (0.054 сек.)