Загрузка данных


Команды для выполнения лабораторной работы №22

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

---

1. Базовые команды для командных файлов (.bat)

Команда Назначение
@echo off Отключает вывод выполняемых команд на экран (символ @ скрывает саму команду echo off)
echo текст Выводит текст на экран
echo. Выводит пустую строку
rem текст Комментарий (не выполняется)
:: текст Альтернативный комментарий
pause Приостанавливает выполнение до нажатия клавиши
exit Завершает работу командного файла
goto метка Переход к метке :метка
call файл.bat Вызов другого командного файла с возвратом
shift Сдвигает параметры: %1←%2, %2←%3 и т.д.
set Работа с переменными окружения
if Условный оператор
for Цикл

Параметры командной строки: %0 — имя файла, %1…%9 — аргументы, %* — все аргументы.

---

2. Команды для примера 1 (цикл FOR)

```bat
@echo off
for %%a in (работает цикл for) do echo %%a
```

· for %%a in (список) do команда — перебирает элементы списка.
· В командном файле используется двойной процент %%a, в командной строке — одинарный %a.

---

3. Команды для примера 2 (del.bak.bat — удаление .bak)

```bat
@echo off
:Clear
shift
if "%1"=="" goto End_of_file
if exist %1\*.bak del %1\*.bak
goto Clear
:End_of_file
```

Команда Назначение
shift Сдвигает параметры, чтобы обработать все пути по очереди
if "%1"=="" goto ... Проверка: параметры закончились
if exist путь del путь Удаление файлов, если они существуют
del файл Удаление файла

---

4. Команды для примера 3 (typ.bat — вывод файла)

```bat
@echo off
if "%1"=="" goto no_param
if not exist %1 goto not_exist
type %1 | more
goto exit
:no_param
echo Должен быть задан параметр (файл для отображения)
goto exit
:not_exist
echo Файл %1 не найден
:exit
```

Команда Назначение
type файл Выводит содержимое текстового файла
more Постраничный вывод
\| Конвейер: вывод type подаётся на вход more
if not exist Проверка отсутствия файла

---

5. Команды для работы с файлами и каталогами

Команда Назначение
md имя / mkdir имя Создать каталог
cd путь Перейти в каталог
cd .. Вернуться на уровень выше
rd имя / rmdir имя Удалить пустой каталог
copy откуда куда Копировать файл
xcopy источник приёмник /s /e /i Копирование с подкаталогами
move откуда куда Переместить файл/каталог
del файл Удалить файл
ren старое новое Переименовать
dir Просмотр содержимого каталога
type файл Вывод файла на экран
more Постраничный просмотр

---

6. Объединение файлов и добавление текста

Команда Назначение
copy f1+f2+f3 rez.txt Объединить файлы в один
copy f1+f2 rez.txt /b Объединение в бинарном режиме
echo текст >> файл Добавить строку в конец файла
echo текст > файл Перезаписать файл
type файл >> rez.txt Добавить содержимое файла в другой

---

7. Работа с переменными окружения

Команда Назначение
set Показать все переменные окружения
set ИМЯ=значение Задать переменную
set /a ИМЯ=выражение Арифметика: set /a MYVAR=%MYVAR%+5
set ИМЯ= Удалить переменную
%ИМЯ% Подставить значение переменной
`set ИМЯ findstr "^P"`

---

8. Специальные команды для работы с командной строкой

Команда Назначение
title текст Изменить заголовок окна
prompt текст Изменить приглашение командной строки
prompt $p$g Вернуть стандартное приглашение
color XY Цвет фона (X) и шрифта (Y), hex-цифры
notepad файл Открыть файл в Блокноте
start файл Запустить файл/программу
cls Очистить экран
mem Информация о памяти
set Вывод переменных окружения
find /c "" Подсчёт строк
help команда или команда /? Справка по команде

Цвета для color: 0 — чёрный, 1 — синий, 2 — зелёный, 3 — голубой, 4 — красный, 5 — фиолетовый, 6 — жёлтый, 7 — белый, 8 — серый, 9 — ярко-синий, A — ярко-зелёный, B — ярко-голубой, C — ярко-красный, D — ярко-фиолетовый, E — ярко-жёлтый, F — ярко-белый.

---

9. Полный командный файл №9 (по заданию)

```bat
@echo off
rem 1. Переход на диск D
d:

rem 2. Создание личного каталога
md D:\MyDir

rem 3. Изменение заголовка
title Работа с Консолью

rem 4. Вывод командного файла в блокнот
copy %0 D:\MyDir\self.txt
notepad D:\MyDir\self.txt

rem 5. Изменение формата приглашения
prompt $t$g

rem 6. Создание подкаталога
md D:\MyDir\SubDir

rem 7. Создание трёх текстовых файлов
help xcopy > D:\MyDir\SubDir\f1.txt
help attrib > D:\MyDir\SubDir\f2.txt
dir D:\MyDir > D:\MyDir\SubDir\f3.txt

rem 8. Копирование через FOR
for %%f in (D:\MyDir\SubDir\*.txt) do copy %%f D:\MyDir\

rem 9. Объединение в REZ.txt
copy D:\MyDir\f1.txt+D:\MyDir\f2.txt+D:\MyDir\f3.txt D:\MyDir\REZ.txt

rem 10. Добавление текста
echo ПРИВЕТ!! >> D:\MyDir\REZ.txt

rem 11. Добавление TEMP
echo %TEMP% >> D:\MyDir\REZ.txt

rem 12. Сумма параметров
set /a SUM=%1+%2
echo %SUM% >> D:\MyDir\REZ.txt

rem 13. Переменная MYVAR
set MYVAR=17

rem 14. MYVAR + 5
set /a MYVAR5=%MYVAR%+5
echo %MYVAR5% >> D:\MyDir\REZ.txt

rem 15. Вывод REZ.txt в Блокнот
notepad D:\MyDir\REZ.txt

rem 16. Запуск test.bat
call test.bat

rem 17. Восстановление приглашения
prompt $p$g

rem 18. Смена цвета по %3
color %3
```

Файл test.bat:

```bat
@echo off
echo === Память ===
mem
echo === Переменные на P ===
set | findstr "^P"
echo === Количество переменных ===
set | find /c "="
pause
```

---

10. Команды для индивидуальных заданий

№ Задание Ключевые команды
1 Слияние n файлов copy %1+%2+... rez.txt, del
2 Меню с альтернативами choice, if errorlevel, goto
3 Создание папки и перенос файлов md %2, move %3 %1\%2
4 Обмен файлами между папками move, xcopy
5 Вывод Ф.И.О. по паролю if "%1"=="пароль" echo %2 %3 %4
6 Телефонная книга if "%1"=="/w" echo %2 %3 >> book.txt, findstr

Пример меню (задание 2):

```bat
@echo off
:menu
cls
echo 1. Программа 1
echo 2. Программа 2
echo 3. Программа 3
echo 0. Выход
choice /c 1230 /n /t 10 /d 1
if errorlevel 4 goto exit
if errorlevel 3 goto p3
if errorlevel 2 goto p2
if errorlevel 1 goto p1
```

---

11. Ответы на контрольные вопросы (кратко)

1. Структура команды: Имя_команды [параметры] [ключи] [аргументы].
2. Порядок параметров: строго определён синтаксисом команды; ключи обычно после имени.
3. Подсказка: команда /? или help команда.
4. Приостановка: pause; прерывание: Ctrl+C или Ctrl+Break.
5. Внутренние — встроены в cmd.exe (dir, cd, echo); внешние — отдельные .exe (xcopy, attrib, format).
6. Командный файл — текстовый файл с расширением .bat/.cmd, содержащий последовательность команд.
7. Можно использовать любые команды ОС + специальные (if, for, goto, shift, call).
8. Извне: параметры %1…%9, переменные окружения, ввод с клавиатуры (set /p).
9. Вызов другого КФ: call файл.bat (с возвратом) или файл.bat (без возврата).
10. Специальные команды: if, for, goto, shift, call, choice, set /p.
11. Создать КФ: в Блокноте набрать команды → сохранить с расширением .bat (тип файла «Все файлы»).

---

Если нужно — могу расписать конкретное индивидуальное задание под ваш номер в списке.