Командный процессор последовательно что делает
Перейти к содержимому

Командный процессор последовательно что делает

  • автор:

Командный процессор

Командный процессор – это программа, функции которой заключаются в следующем:

— прием и синтаксический разбор команд, полученных с клавиатуры или из командного файла;

— исполнение внутренних команд операционной системы;

— загрузка и исполнение внешних команд (реализованных в виде самостоятельных программ) операционной системы и прикладных программ пользователя (файлы с расширением СОМ, ЕХЕ или ВАТ). Некоторые стандартные команды (TYPE, DIR и другие) командный процессор выполняет сам. Такие команды называются внутренними (как правило, это основные команды работы с файлами и каталогами). Для выполнения внешних команд пользователя командный процессор ищет на дисках программу с соответствующим именем и расширением СОМ, ЕХЕ (например, FORMAT.COM), и если находит ее, то загружает в память и передает ей управление. По окончании работы программы командный процессор удаляет ее из памяти.

Таким образом, внешние команды ОС – это программы, поставляемые вместе с операционной системой в виде отдельных файлов.

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

очередной строке стоит команда, осуществляющая вызов какой-то программы, выполнение командного файла приостанавливается и начинается работа вызванной программы. После ее завершения происходит выполнение следующей команды командного файла.

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

Воспользуйтесь поиском по сайту:

studopedia.org — Студопедия.Орг — 2014-2023 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.011 с) .

Командный процессор ос ms Windows cmd

Часть 1. Внешние и внутренние команды Цель работы– знакомство с возможностями интерпретатора командной строки и командамиMSWindows, приобретение навыков работы со справочной системой командного процессораcmd 1. КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ 1.1. Инструменты, используемые для автоматизации работы в ОС MS Windows 1.1.1. Оболочка (интерпретатор) командной строки command.com/cmd.exe Во всех версиях ОС Windows поддерживается оболочка командной строки (command shell) и определенный набор утилит. Механизм работы оболочек командной строки в разных системах одинаков: в ответ на приглашение («подсказку», prompt), пользователь вводит некоторую команду, после чего оболочка выполняет команду, выводит приглашение и ожидает ввода следующей команды. Наряду с интерактивным режимом работы оболочки поддерживают и пакетный режим, в котором система последовательно выполняет команды, записанные в текстовом командном файле (файле-сценарии). Начиная с версии Windows NT, в качестве оболочки командной строки используется интерпретатор Cmd.exe.

1.1.2. Командная оболочка Microsoft PowerShell

  • применение командной строки в качестве основного интерфейса администрирования;
  • интеграция командной строки, объектов COM, WMI и .NET;
  • работа с произвольными источниками данных в командной строке по принципу файловой системы.

1.2 Оболочка командной строки Windows -интерпретатор Cmd.Exe

В ОС Windows, как и в других ОС, интерактивные команды выполняются с помощью командного процессора или оболочкой командной строки (command shell).

1.2.1 Запуск оболочки

Для запуска командного интерпретатора (открытия нового сеанса командной строки) следует выбрать пункт Выполнить… (Run) в меню Пуск (Start), ввести имя файла Cmd.exe и нажать кнопку OK. В результате откроется новое окно (см. рис. 1), в котором можно вводить команды и видеть результаты их работы. Рис. 1 — Командное окно интерпретатора Cmd.exe в Windows XP 1.2.2 Настройка параметров командного окна интерпретатора Интерпретатор имеет свой набор опций и параметров настройки. Просмотр и редактирование этих опций выполняется с помощью пункта Свойства управляющего меню окна (нажать правой кнопкой мыши на заголовок окна). В окне свойств (см. рис. 2) будут доступны четыре вкладки с опциями: общие, шрифт, расположение и цвета. Рис. 2–окно настройки свойств интерпретатора

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

Внутренние команды распознаются и выполняются непосредственно самим командным интерпретатором (например, COPY или DIR). Внешние команды ОС – это отдельные программы, расположенные в том же каталоге, что и Cmd.exe, которые Windows загружает и выполняет аналогично другим программам — например, MORE или XCOPY. Для выполнения команды после приглашения командной строки (например, C:\>) следует ввести имя этой команды (регистр не важен), ее параметры и ключи (если они необходимы) и нажать клавишу . Например: C:\>COPY C:\myfile.txt A:\ /V Имя команды здесь — COPY, параметры — C:\myfile.txt и A:\, а ключом является /V. Отметим, что в некоторых командах ключи могут начинаться не с символа /, а с символа – (минус), например, -V. Многие команды Windows имеют большое количество дополнительных параметров и ключей. Большинство команд снабжено встроенной справкой, в которой кратко описываются назначение и синтаксис данной команды. Получить доступ к такой справке можно путем ввода команды с ключом /?. Например, если выполнить команду ATTRIB /?, то в окне будет выведен следующий текст: Отображение и изменение атрибутов файлов. ATTRIB [+R|-R] [+A|-A] [+S|-S] [+H|-H] [[диск:][путь]имя_файла] [/S] + Установка атрибута. — Снятие атрибута. R Атрибут «Только чтение». A Атрибут «Архивный». S Атрибут «Системный». H Атрибут «Скрытый». /S Обработка файлов во всех вложенных папках указанного пути. Для некоторых команд текст справки может быть объемным и занимать более одного экрана. В этом случае помощь можно выводить последовательно по одному экрану с помощью команды MORE и символа конвейеризации |, например: XCOPY /? | MORE В этом случае после заполнения очередного экрана вывод помощи будет прерываться до нажатия любой клавиши. Кроме того, используя символы перенаправления вывода > и >>, можно текст, выводимый на экран, направить в текстовый файл для дальнейшего просмотра. Например, для вывода текста справки к команде XCOPY в текстовый файл xcopy.txt, используется следующая команда: XCOPY /? > XCOPY.TXT Вместо имени файла можно указывать обозначения устройств компьютера. В Windows поддерживаются следующие имена устройств: PRN (принтер), CON (терминал: при вводе это клавиатура, при выводе — монитор), NUL (пустое устройство, все операции ввода/вывода для него игнорируются).

Состав операционной системы (часть 2)

Командный процессор – это программа, функции которой заключаются в следующем:

— прием и синтаксический разбор команд, полученных с клавиатуры или из командного файла;

— исполнение внутренних команд операционной системы;

— загрузка и исполнение внешних команд (реализованных в виде самостоятельных программ) операционной системы и прикладных программ пользователя (файлы с расширением СОМ, ЕХЕ или ВАТ). Некоторые стандартные команды (TYPE, DIR и другие) командный процессор выполняет сам. Такие команды называются внутренними (как правило, это основные команды работы с файлами и каталогами). Для выполнения внешних команд пользователя командный процессор ищет на дисках программу с соответствующим именем и расширением СОМ, ЕХЕ (например, FORMAT.COM), и если находит ее, то загружает в память и передает ей управление. По окончании работы программы командный процессор удаляет ее из памяти.

Таким образом, внешние команды ОС – это программы, поставляемые вместе с операционной системой в виде отдельных файлов.

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

очередной строке стоит команда, осуществляющая вызов какой-то программы, выполнение командного файла приостанавливается и начинается работа вызванной программы. После ее завершения происходит выполнение следующей команды командного файла.

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

Программное обеспечение подразделяется на 2 больших подгруппы

  1. Системные программные обеспечения (программы для настройки и обслуживания ПК, Системы программирования, операционные системы).

2. Прикладное ПО

Оболочка операционной системы (от англ. shell — оболочка) — интерпретатор команд операционной системы (ОС), обеспечивающий интерфейс для взаимодействия пользователя с функциями системы.

В общем случае, различают оболочки с двумя типами интерфейса для взаимодействия с пользователем: интерфейс командной строки (CLI) и графический пользовательский интерфейс (GUI).

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

В операционные системы MS-DOS и Windows 9x включён командный интерпретатор command.com, в Windows NT включён cmd.exe. В большом семействе командных оболочек UNIX популярны bash, csh, ksh и другие. Как правило, при низкоуровневой настройке ОС у пользователя есть возможность менять командный интерпретатор, используемый по умолчанию.

Графи?ческий интерфе?йс по?льзователя (ГИП), графический пользовательский интерфейс — разновидность пользовательского интерфейса, в котором элементы интерфейса (меню, кнопки, значки, списки и т. п.), представленные пользователю на дисплее, исполнены в виде графических изображений.

В отличие от интерфейса командной строки, в ГПИ пользователь имеет произвольный доступ (с помощью устройств ввода — клавиатуры, мыши, джойстика и т. п.) ко всем видимым экранным объектам (элементам интерфейса) и осуществляет непосредственное манипулирование ими. Чаще всего элементы интерфейса в ГУИ реализованы на основе метафор и отображают их назначение и свойства, что облегчает понимание и освоение программ неподготовленными пользователями.

Примеры: WindowsExplorer(проводник) и KDE(для unix-систем).

Командные процессоры

При запуске программ из командной строки часто требуется передать им в качестве аргументов одно или несколько имен файлов. Часто эти имена удобно задать шаблоном – например, / var /log/ messages . ?, что означает «все файлы из каталога / var /log , имена которых начинаются на messages ., а завершаются любым символом». Любой командный процессор умеет подставлять в командную строку имена файлов, соответствующие шаблону:

ls -l /var/log/messages.?

Символ «?» трактуется командным процессором как шаблон , которому соответствует один любой символ.

Обратите внимание на то, что командный процессор не понимает регулярных выражений . Его шаблоны похожи на регулярные выражения , но это – две совершенно разные песни. Для обработки регулярных выражений в любом приложении используется стандартная функция regex, а шаблоны имен файлов каждый командный процессор обрабатывает по -своему.

Командный процессор распознает и интерпретирует следующие символы в шаблонах (такие символы называются метасимволами , metasymbols или wildcards).

Таблица 12.7.

Метасимвол Смысл
* Любая подстрока , в том числе пустая.
? Один любой символ.
[. ] Один любой символ из списка (например, [avgf]) или диапазона (например, [a-z])

Порядок подстановки имен файлов по шаблону таков: вначале командный процессор находит все файлы, имена которых соответствуют шаблону, а затем подставляет имена всех этих файлов через пробел в строку в то место , где был написан шаблон .

Стало быть, если в текущем каталоге есть файлы money .c, money . bak , money . obj и wallet .x, то команда

ls –l money.*

будет раскрыта в

ls –l money.c money.bak money.obj

Подстановка результата выполнения

Иногда возникает необходимость отыскать в системе файлы по некоему признаку и со всеми этими файлами выполнить одинаковое действие: например, во всех файлах *. html заменить подстроку Siemens на Nixdorf. Если это требуется сделать только для файлов, лежащих в одном каталоге, то задача решается достаточно просто. Здесь мы приведем пример скрипта для Bourne Shell , но аналогичный скрипт легко написать и для других командных процессоров :

for i in *.html do sed 's/Siemens/Nixdorf/g' tmp mv tmp $i done

Переменная i последовательно принимает значения из списка, т.е. на каждой итерации цикла она имеет разное значение ; список будет содержать имена всех файлов текущего каталога , соответствующих шаблону *. html .

Команда sed обеспечивает замену всех вхождений Siemens на Nixdorf, причем во входной поток sed перенаправляется содержимое очередного файла, в зависимости от значения переменной i. Результат направляется в файл tmp , а команда mv обеспечивает переименование файла tmp в нужное имя для замены старого файла из списка *. html новым.

Что делать, если такую процедуру надо проделать со всеми файлами *. html всего дерева каталогов, начиная с текущего каталога ?

В UNIX есть уникальная возможность, которая реализована в любом командном процессоре : можно «вложить» одну команду в другую так, чтобы вначале выполнилась первая, а затем результат ее выполнения был подставлен в командную строку для вызова второй команды.

Итак, мы хотим найти все файлы *. html в поддереве файловой системы, начиная с текущего каталога .

Используем find для поиска:

find . -name "*.html"

Теперь воспользуемся конструкцией » подстановка результата выполнения» и перепишем наш скрипт для замены подстрок :

for i in ` find . -name "*.html" ` do sed 's/Siemens/Nixdorf/g' tmp mv tmp $i done

Команда , заключенная в ` ` (обратные апострофы ), выполняется первой, а результат ее выполнения подставляется в командную строку . Затем командная строка запускается на выполнение.

Завершение имен файлов

Функция «подсказки» (можно сказать также – «завершения») имен файлов (file name completion ) позволяет набрать только часть имени существующего файла и затем нажать клавишу Tab >. В ответ на это командный процессор «закончит» набор имени файла. Например, если надо обратиться к файлу /usr/sadm/ admin / bin /printmgr , то достаточно набрать

/usr/sadm/admin/bin/printmgr

Завершение имен файлов реализовано только в bash и tcsh.

Тем, в чьей системе есть файлы с длинными уникальными именами, подсказка имен файлов отлично экономит время.

При двойном нажатии Tab > выводятся все возможные варианты завершения имени файла.

Например, если в каталоге есть два файла, начинающиеся с букв msg : msg01.txt и msg02.txt и надо просмотреть один из них, я набираю more msg Tab > Tab >

Командный процессор bash (или tcsh) мне подскажет:

msg01.txt msg02.txt

Теперь достаточно набрать еще цифру 1 или 2, чтобы указать, какой именно файл требуется, и еще раз нажать Tab > для окончательного завершения имени. Если после двойного нажатия Tab > bash видит слишком много возможных вариантов имен, он спросит:

There are 1102 possibilities. Do you really wish to see them all? (y or n)

Стоит ответить n: так много имен не уместится на экран.

Средства редактирования командной строки

Редактировать командную строку приходится для того, чтобы исправить что-то в только что набранной строке. В sh нельзя передвинуть курсор в любую позицию в строке, в остальных командных процессорах – можно. Удобнее всего редактировать командную строку в bash .

В каждом командном процессоре реализованы стирание последнего символа клавишей backspace > и стирание строки целиком комбинацией клавиш Ctrl -U>.

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

В bash и tcsh можно перемещаться вперед и назад по уже введенным символам в строке с помощью «стрелок», вводить знаки в середину и в начало строки. Командный процессор bash после нажатия Enter принимает всю строку целиком, независимо от того, в какой позиции строки находился курсор при нажатии Enter . Например, можно вернуть курсор к середине строки, если ввод оказался неверным, исправить ошибку и тут же нажать Enter , чтобы запустить команду на выполнение. В некоторых старых версиях командных процессоров в этом случае следует исправить строку, перейти к ее концу для ввода команды и только после этого нажать Enter .

В ksh редактирование по умолчанию выключено, его надо включить нажатием клавиши Esc 4 Редактирование командной строки будет работать корректно, только если терминал настроен правильно, а значение переменной среды окружения TERM совпадает с реальным типом терминала. . После этого командная строка будет редактироваться командами того редактора, имя которого задано в переменной среды окружения VISUAL или EDITOR . По умолчанию это редактор vi . Трудно найти такого системного администратора , которому такой громоздкий и неудобный способ исправления команд покажется удачным: ведь ко всему прочему ему придется помнить о переключении режимов редактирования строки ввода!

В csh и tcsh редактирование командной строки выполняется так же, как в bash .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *