Лекции.Орг


Поиск:




Категории:

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

 

 

 

 


Внутренние и внешние команды. Структура команды интерпретатора




 

Внутренние команды распознаются и выполняются непосредственно самим командным интерпретатором (например, COPY или DIR). Внешние команды ОС – это отдельные программы, расположенные в том же каталоге, что и cmd.exe, которые Windows загружает и выполняет аналогично другим программам, например, MORE или XCOPY.

Для выполнения команды после приглашения командной строки (например, C:\>) следует ввести имя этой команды (регистр не важен), ее параметры и ключи (если они необходимы) и нажать клавишу <Enter>. Например:

C:\>COPY C:\myfile.txt A:\ /V

Имя команды здесь COPY, параметры – C:\myfile.txt и A:\, а ключом является /V. Отметим, что в некоторых командах ключи могут начинаться не с символа /, а с символа - (минус), например, -V.

 

 

 Рисунок 1.2 – Окно настройки свойств интерпретатора в Windows 10

 

Многие команды Windows имеют большое количество дополнительных параметров и ключей. Большинство команд снабжено встроенной справкой, в которой кратко описываются назначение и синтаксис данной команды. Получить доступ к такой справке можно путем ввода команды с ключом /?. Например, если выполнить команду ECHO /?, то в окне будет выведен следующий текст:

Вывод сообщений и переключение режима отображения команд на экране.ECHO [ON | OFF]ECHO [message]Введите ECHO без параметра для определения текущего значения этой команды.

Для некоторых команд текст справки может быть объемным и занимать более одного экрана. В этом случае помощь можно выводить последовательно по одному экрану с помощью команды MORE и символа конвейеризации |, например:

XCOPY /? | MORE

В этом случае после заполнения очередного экрана вывод текста будет прерываться до нажатия любой клавиши. Кроме того, используя символы перенаправления вывода > и >>, можно выводимый на экран текст направить в текстовый файл для дальнейшего просмотра. Например, для вывода текста справки к команде XCOPY в текстовый файл xcopy.txt, используется следующая команда:

XCOPY /? > xcopy.txt

Вместо имени файла можно указывать имена устройств компьютера. В Windows используются следующие имена устройств: PRN (принтер), CON (терминал: при вводе это клавиатура, при выводе монитор), NUL (пустое устройство, все операции ввода/вывода для него игнорируются).

 

1. 1.2.4. Перенаправление ввода/вывода и конвейеризация команд

С помощью переназначения устройств ввода/вывода одна команда может направить свой вывод на вход другой, то есть имеется возможность передавать информацию от команды к команде. Практически это означает, что для команд, которые используют стандартные входные и выходные устройства, ОС позволяет:

– выводить сообщения программ не на экран (стандартный выходной поток), а в файл или на принтер (перенаправление вывода);

– читать входные данные не с клавиатуры (стандартный входной поток), а из заранее подготовленного файла (перенаправление ввода);

– передавать сообщения, выводимые одной программой, в качестве входных данных для другой программы (конвейеризация или композиция команд).

Для того, чтобы перенаправить текстовые сообщения, выводимые какой-либо командой, в текстовый файл, нужно использовать конструкцию

команда > имя_файла

Если при этом заданный для вывода файл уже существует, то он перезаписывается, если не существует, то создается. Можно также не создавать файл заново, а дописывать данные, выводимые командой, в конец существующего файла. Для этого команда перенаправления вывода должна быть задана так:

команда >> имя_файла

С помощью символа < можно прочитать входные данные для заданной команды не с клавиатуры, а из заранее подготовленного файла:

команда < имя_файла

Рассмотрим примеры использования перенаправления вывода.

1. Вывод встроенной справки для команды COPY в файл copy.txt:

COPY /? > copy.txt

2. Добавление текста справки для команды XCOPY в файл copy.txt:

XCOPY /? >> copy.txt

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

команда 2 > имя_файла

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

команда > имя_файла 2>&1

Например, в приведенной ниже команде стандартный выходной поток и стандартный поток ошибок перенаправляются в файл copy.txt:

XCOPY D:\1.txt C: > copy.txt 2>&1

Наконец, с помощью конструкции

команда1 | команда2

можно использовать сообщения, выводимые первой командой, в качестве входных данных для второй команды (конвейер команд).

Команды MORE, SORT и TYPE

Команда MORE считывает стандартный ввод из конвейера или файла и выводит информацию частями, размер каждой из которых не больше размера экрана. Возможны два способа записи команды:

MORE [диск:][путь]имя_файла илиимя_команды | MORE

Параметр [диск:][путь]имя_файла определяет расположение и имя файла с просматриваемыми на экране данными. Параметр имя_команды задает команду, вывод которой отображается на экране (например, DIR или команда TYPE, использующаяся для вывода содержимого текстового файла на экран). Приведем два примера.

Для поэкранного просмотра текстового файла news.txt возможны следующие варианты команд:

MORE news.txtTYPE news.txt | MORE

Другой распространенной командой, использующей перенаправление ввода/вывода и конвейеризацию, является SORT. Эта команда работает как фильтр: она считывает символы в заданном столбце каждой строки файла, упорядочивает их в возрастающем или убывающем порядке и выводит отсортированную информацию в файл, на экран или другое устройство. Возможны два варианта синтаксиса этой команды:

SORT [/R] [/+n] [[диск1:][путь1]файл1] [> [диск2:][путь2]файл2]

или

[команда |] SORT [/R] [/+n] [> [диск2:][путь2]файл2]

В первом случае параметр [диск1:][путь1]файл1 определяет имя файла, который нужно отсортировать. Во втором случае будут отсортированы выходные данные указанной команды. Если параметры файл1 или команда не заданы, то SORT будет считывать данные с устройства стандартного ввода. Параметр [диск2:][путь2]файл2 задает файл, в который направляется сортированный вывод; если этот параметр не задан, то вывод будет направлен на устройство стандартного вывода.

По умолчанию сортировка выполняется в порядке возрастания. Ключ /R позволяет изменить порядок сортировки на обратный (от Z к A и затем от 9 до 0). Например, для поэкранного просмотра отсортированного в обратном порядке файла price.txt, нужно задать следующую команду:

SORT /R < price.txt |MORE

Ключ /+n задает сортировку в файле по символам столбца с номером n. Например, /+10 означает, что сортировка должна осуществляться, начиная с десятой позиции в каждой строке. По умолчанию файл сортируется по первому столбцу.





Поделиться с друзьями:


Дата добавления: 2018-10-18; Мы поможем в написании ваших работ!; просмотров: 1585 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

80% успеха - это появиться в нужном месте в нужное время. © Вуди Аллен
==> читать все изречения...

2293 - | 2146 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.011 с.