Студопедия Главная Случайная страница Обратная связь

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

Особенности командных файлов в Windows NT-XP





Фактически в составе Windows NT имеются два командных интерпретатора – command.com во встроенной виртуальной машине MS-Dos (аналогичный по возможностям рассмотренному ранее) и специальный интерпретатор команд Windows NT – cmd.exe (%SytemRoot%\System32).

Для запуска командного интерпретатора можно вызвать ярлык «Пуск/Программы/Командная строка», файловый менеджер типа FAR или загрузить cmd.exe непосредственно. При запуске cmd.exe можно использовать, как и в command.com ключи /C, /K, а также задание цвета и кодировки. Ключи /X и /Y соответственно включают и выключают расширенный режим работы интерпретатора (по умолчанию установлен).

Работа с переменными среды текущего командного окна осуществляется, как и в Windows 9x, с помощью команды set. Естественно, изменения, ко­торые вносятся в переменные среды этой команды, актуальны только в те­кущем командном окне.

Новые, весьма полезные, возможности у команды set появляются при включении расширенной обработки команд. Теперь переменные могут рассматриваться как числа и с ними можно производить арифметические вычисления. Для этой цели имеется дополнительный ключ /а:

SET /А переменная=выражение

Использование ключа /а указывает, что стоящая справа от знака равенства строка является числовым выражением, значение которого вычисляется.

Например, если задать команду

SET /А М=1+2

то значение переменной M будет равно трем.

Обработчик выражений, входящих в команду set, очень прост и поддерживает следующие операции, перечисленные в порядке убывания приоритета:

· группировка с помощью круглых скобок ();

· арифметические операторы умножения (*), целочисленного деления (/), остатка от деления (%);

· арифметические операторы сложения (+) и вычитания (-);

· двоичный сдвиг влево (<<) и вправо (>>);

· двоичное И (&);

· двоичное исключающее ИЛИ (л);

· двоичное ИЛИ (|);

· операторы присваивания =*, =/, =%, =+, =-, =, &=, ^=, |=, <<= и >>=;

· разделение операторов с помощью запятой (,).

При использовании любых логических или двоичных операторов необходимо заключить строку выражения в кавычки. Можно использовать префиксы для систем счисления – 0x -16, 0b - 2, 0 - 8. Любые нечисловые строки в выражении рассматриваются как имена переменных среды, значения кото­рых преобразуются в числовой вид перед использованием. Если переменная с указанным именем не определена, вместо нее подставляется ну­левое значение. Например, если переменная X не была предваритель­но задана, то в результате выполнения команды

SET /A N=X+5

значение n будет равно пяти.

Таким образом, применение ключа /а позволяет выполнять арифметические операции со значениями переменных среды, причем не нужно вводить зна­ки % для получения их значений. Кроме того, усовершенствована работа с переменными среды как со строками (кроме конкатенации – замена вхождений и выделение подстрок).

Командные файлы в Windows NT, как и в Windows 9x, являются обычными текстовыми файлами, однако для них в операционной системе зарезервиро­ваны не одно, а два расширения: bat и cmd. Новые возможности командных файлов связаны с командами setlocal, endlocal, pushd, popd, a также изменениями в goto, call, if, for.

В Windows NT имеется возможность локализовать изменения переменных среды внутри пакетного файла, т. е. автоматически восстанавливать значе­ния всех переменных в том виде, в каком они были до начала запуска дан­ного файла. Команда SETLOCAL определяет начало области локальных установок пере­менных среды, т.е. изменения среды, внесенные после вы­полнения setlocal, будут являться локальными относительно текущего па­кетного файла. Каждая команда setlocal должна иметь соответствующую команду ENDLOCAL для восстановления прежних значений переменных среды.

При работе с параметрами командного файла можно обозначить все аргументы через %*, а также использовать синтаксический анализ:

Операторы Описание Пример
%~Fn Полное имя файла %~F1=C:\TEXT\Рассказ.doc
%~Dn Имя диска %~D1=C:
%~Pn Путь к файлу %~P1=\TEXT\
%~Nn Имя файла %~N1=Рассказ
%~Xn Расширение файла %~X1=doc

Можно задавать в качестве метки перехода строку:EOF, которая передает управление в конец текущего пакетного файла. Это позволяет легко выйти из пакетного файла без определения каких-либо меток в самом его конце (GOTO:EOF).

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

Дополнительно вводятся еще три варианта команды IF:

1) IF [/I] строка1 оператор_сравнения строка2 команда

В качестве операторов_сравнения используются: EQL – равно, NEQ – не равно, LSS – меньше, GTR – больше, LEQ – меньше или равно, GEQ – больше или равно. Ключ /I задает сравнение без учета регистра.

2) IF CMDEXTVERSION число команда

Служит для определения внутреннего номера версии расширенной обработки команд (какая на 2000 и XP -?)

3) IF DEFINED переменная команда

Возвращает истинное значение, если переменная среды определена.

В Windows NT дос­тупны еще пять разновидностей циклов FOR, которые обеспечивают следующие функции:

1) FOR /D %переменная IN (набор) DO команда [параметры]

Выполнение заданной команды для всех подходящих имен каталогов, например получение списка всех каталогов на диске C:







Дата добавления: 2015-08-12; просмотров: 553. Нарушение авторских прав; Мы поможем в написании вашей работы!




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


Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...


Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...


Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Приложение Г: Особенности заполнение справки формы ву-45   После выполнения полного опробования тормозов, а так же после сокращенного, если предварительно на станции было произведено полное опробование тормозов состава от стационарной установки с автоматической регистрацией параметров или без...

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

Неисправности автосцепки, с которыми запрещается постановка вагонов в поезд. Причины саморасцепов ЗАПРЕЩАЕТСЯ: постановка в поезда и следование в них вагонов, у которых автосцепное устройство имеет хотя бы одну из следующих неисправностей: - трещину в корпусе автосцепки, излом деталей механизма...

Методика обучения письму и письменной речи на иностранном языке в средней школе. Различают письмо и письменную речь. Письмо – объект овладения графической и орфографической системами иностранного языка для фиксации языкового и речевого материала...

Классификация холодных блюд и закусок. Урок №2 Тема: Холодные блюда и закуски. Значение холодных блюд и закусок. Классификация холодных блюд и закусок. Кулинарная обработка продуктов...

ТЕРМОДИНАМИКА БИОЛОГИЧЕСКИХ СИСТЕМ. 1. Особенности термодинамического метода изучения биологических систем. Основные понятия термодинамики. Термодинамикой называется раздел физики...

Studopedia.info - Студопедия - 2014-2026 год . (0.009 сек.) русская версия | украинская версия