- •Лабораторная работа № 1-04
- •4.2. Вызов командного файла
- •4.3. Команды, используемые в командных файлах
- •4.3.1. Команда echoи префикс @
- •4.3.2. Команда cls
- •4.3.3. Командаrem
- •4.3.4. Командаcolor
- •4.3.5. Команды pushd и popd
- •4.3.6. Метки и команда goto
- •4.3.7. Команда if
- •If условие команда
- •4.3.8. Команда find
- •4.3.9. Команда findstr
- •4.3.10. Команда sort
- •4.3.11. Команда for
- •4.3.12. Команда set
- •4.3.13. Команды setlocalиendlocal
- •4.3.14. Команда call
- •4.3.15. Команда start
- •4.3.16. Команда cmd
- •4.3.17. Командаpause
- •Для продолжения нажмите любую клавишу . . .
- •4.4. Последовательности команд
- •4.5. Пример командного файла
- •5. Порядок выполнения работы
- •Вариант 5-01
- •Вариант 5-02
- •Вариант 5-03
- •Вариант 5-04
- •Вариант 5-05
- •Вариант 5-06
- •Вариант 5-07
- •Вариант 5-08
- •Вариант 5-09
- •Вариант 5-10
- •Вариант 5-11
- •Вариант 5-12
- •Вариант 5-13
- •Вариант 5-14
- •Вариант 5-15
- •6. Содержание отчета
- •7. Вопросы для самоконтроля
4.3.12. Команда set
Команда setзадает, удаляет и просматривает переменные окружения, а также позволяет вводить строковые переменные, задавать числовые переменные и выполнять операции над ними.
Для просмотра установленных переменных окружения и их значенийиспользуется командаsetбез параметров.
Для задания переменной окруженияиспользуется следующая форма командыset:
setимя-переменной=значение
Если переменной с заданным именем нет в списке переменных окружения, переменная будет добавлена в список и получит заданное значение, Если переменная уже существует, ее значение будет изменено.
Если в командном файле употребить имя переменной окружения, заключенное с обеих сторон в знаки процента (%), то оно будет заменено значением этой переменной.
Для удаления переменной окруженияиспользуется следующая форма командыset:
setимя-переменной=
Помимо задаваемых пользователем переменных окружения, в командных файлах можно использовать значения системных переменных окружения, основными из которых являются:
%CD%– возвращает путь к текущей папке;
%DATE%и%TIME%– возвращают текущую дату и время;
%ERRORLEVEL%– возвращает код ошибки последней использовавшейся команды;
%OS%– возвращает имя операционной системы;
%PATH%– возвращает пути поиска исполняемых файлов (программ);
%PROMPT%– возвращает параметры командной строки для текущего интерпретатора;
%RANDOM%– возвращает десятичное целое случайное число в диапазоне от 0 до 32767;
%SYSTEMDRIVE%– возвращает имя диска, содержащего корневой каталогWindows;
%SYSTEMROOT%– возвращает путь к системному каталогуWindows;
%USERNAME%– возвращает имя пользователя.
Для ввода строкииспользуется форма командыsetс опцией/p:
set /p имя-переменной=
Эта команда приостанавливает выполнение командного файла и ожидает ввода строки с клавиатуры и нажатия клавиши Enter. После этого значение введенной строки присваивается переменной с заданным именем.
Для операций над числовыми выражениямииспользуется форма командыsetс опцией/a:
set /a выражение
В выражениимогут быть заданы следующие арифметические и логические операции:
+,-,*и/– арифметические операции сложения, вычитания, умножения и деления;
%– операция определения остатка от деления двух целых чисел;
число<<сдвиг–числорассматривается как представленное в двоичном виде и его биты сдвигаются влево на количество позиций, указанных в параметресдвиг(освободившиеся биты заполняются нулями);
число>>сдвиг–числорассматривается как представленное в двоичном виде и его биты сдвигаются вправо на количество позиций, указанных в параметресдвиг(освободившиеся биты заполняются нулями);
число1 & число2–число1ичисло2 рассматриваются как представленные в двоичном виде и над их битами выполняется поразрядное логическое умножение – операцияИ(соответствующий разряд результата будет равен1только тогда, когда оба бита разрядачисла1ичисла2 равны1, в остальных случаях бит равен0);
число1 | число2–число1ичисло2 рассматриваются как представленные в двоичном виде и над их битами выполняется поразрядное логическое сложение – операцияИЛИ(соответствующий разряд результата будет равен0только тогда, когда оба бита разрядачисла1ичисла2 равны0, в остальных случаях бит равен1);
число1 ^ число2–число1ичисло2 рассматриваются как представленные в двоичном виде и над их битами выполняется операцияисключающее ИЛИ(соответствующий разряд результата будет равен1только тогда, когда оба бита разрядачисла1ичисла2 не равны друг другу, в остальных случаях бит равен0);
=– операция присваивания;
*=,/=,%=,+=,-=,&=,^=,|=,<<=и>>= – составные операции присваивания (например, составная операция присваиванияx+=3эквивалентна простой операции присваиванияx=x+3);
, – разделение выражения;
< >– группировка выражения.