Сообщение было отмечено как решение
Решение
В этой статье:
- Определение и назначение командного файла
- Проверка, существует ли файл
- Проверка кода завершения
- Сравнение двух строк
- Команды REM, ECHO, PAUSE, IF, ERRORLEVEL, SET, GOTO, CALL, SHIFT, FOR, CHOICE
- Знак @
1. Определение командного файла.
Командные (пакетные) файлы — особая категория исполняемых файлов.
Расширение: *.bat (от англ. batch — «пакет», «группа»). Запуск командного файла осуществляется так же, как запуск исполняемой программы, то есть, указывается имя файла и, если требуется, параметры.
Назначение: BAT-файлы служат для организации взаимодействия пользователей с прикладными программами.
Состав: текст, который интерпретируется командным процессором. Строки этого текста могут представлять собой:
- внешние или внутренние команды ОС;
- обращения к исполняемым программам *.COM или *.EXE, и вызовы других командных файлов;
- команды для управления выдачей на экран, а также для организации ветвлений и циклов;
- метки, на которые совершается переход при выполнении заданного в файле условия.
Каждая команда находится на отдельной строке.
2. Команды пакетной обработки.
а)
REM комментарий в тексте файла. Обычно используют, чтобы временно убрать из текста какую-либо команду. Формат: REM [любая строка]
б)
ECHO вывод на экран сообщений. Формат: ECHO [ON или OFF или Сообщение]
Параметры ON и OFF включают и выключают выдачу на экран системных сообщений («эха»). Команда ECHO OFF используется, чтобы не «засорять» экран при исполнении BAT-файла. Произвольная строка после ECHO понимается как сообщение и без изменений выводится на экран. Пустая строка обозначается одной точкой. Примеры:
Перейти к следующей строке;
Bash | ||
|
Выдает на экран сообщение «Программа не найдена!».
в)
@. Может быть только первым символом строки и подавляет ее выдачу на экран. Используется только в пакетном режиме.
Пример:
Выключаем «эхо»; из-за символа @ сама команда echo off тоже не выводится на экран; этой строкой обычно начинаются командные файлы.
г)
PAUSE приостанавливает вывод на экран, выводит сообщение «Нажмите любую клавишу…» и ждет нажатия любой клавиши. Параметров не имеет.
д)
IF позволяет проверять условие и выполнять ветвление в зависимости от результата проверки.
Общий вид команды:
IF [NOT] [условие] [действие], где «действие» — любая команда, выполняемая, если истинно условие. Условие записывается в одной из трех форм, поэтому команда IF имеет три формата.
Формат 1. Проверка кода завершения последней перед оператором IF команды. Используется конструкция следующего вида: IF ERRORLEVEL число
Любая программа может выработать в момент своего окончания собственный код завершения, который доступен другим программам через переменную с именем ERRORLEVEL. Большинство команд и программ при нормальном завершении устанавливают errorlevel=0. Задав условие if errorlevel 1, Вы определите, что оно будет выполнено, если программа вырабатывает код завершения больший, либо равный 1.
Bash | ||
|
если программа format установила errorlevel больше нуля,сообщить об ошибке;
Формат 2. Проверка наличия файла в каталоге. Оператор IF имеет вид: IF EXIST имя файла
Команда проверяет, существует ли файл с заданным именем. При обнаружении файла условие считается выполненным. Можно использовать маску — тогда условие выполнено, если найден хотя бы один подходящий файл.
Bash | ||
|
если в головном каталоге диска c: есть файл autoexec.bat, вывести его на экран;
Bash | ||
|
если в каталоге WORK нет ни одного файла, вывести соответствующее сообщение;
Формат 3. Сравнение двух строк. Оператор имеет вид: IF [строка_1]==[строка_2]
Условие выполняется, если строки 1 и 2 совпадают. Чтобы застраховаться от случая, когда одна из строк оказывается пустой, обе строки заключают в одинаковые символы, например, в квадратные скобки.
Любое из этих трех условий может задаваться со знаком логического отрицания NOT. При этом истинность условия трактуется в обратном смысле. Примеры:
если переменная с именем A равна строке ‘Yes’, очистить экран.
Аналогично команда IF может использоваться из командной строки.
е)
GOTO позволяет передавать управление на заданную метку Формат команды: GOTO метка
Метка начинается со знака : Пример:
Bash | ||
|
Если переменная A совпадает со строкой Yes, перейти на метку Clear и очистить экран. В противном случае пропустить очистку экрана.
ж)
CALL осуществляет вызов одного командного файла из другого с последующим возвратом в вызывающий файл. Формат команды: CALL [имя файла]
В имени вызываемого файла могут содержаться дополнительные параметры, которые обрабатываются вызванным файлом. Пример:
Вызывающий командный файл: (example.bat)
Bash | ||
|
Вызываемый командный файл: (version.bat)
Bash | ||
|
example.bat вызывает version.bat, после выполнения которого вновь получает управление.
з)
Переменные в командных файлах используются для обмена информацией между отдельными командами. Существуют два их вида:
1)
переменная, определяемая в цикле. Ее имя состоит символа процента (в старых версиях DOS/Windows — двух символов) и последующих букв, например, %A. Набор значений, которые последовательно принимает такая переменная, задается при ее определении в команде for (см. ниже).
2)
переменная окружения. Она определяется внутренней командой DOS вида
где имя и значение — произвольные строки, и в течение всего сеанса работы хранится в специальной области памяти, называемой «системным окружением». Системное окружение управляется командным интерпретатором command.com. Чтобы использовать переменную окружения в командном файле нужно ее имя заключить в символы процента %, например, командами
Bash | ||
|
переменной с именем weekday присваивают значение sunday и выводят ее значение на экран командой ECHO.
Для удаления переменной из окружения используют строку вида
Для просмотра окружения можно использовать команду SET без параметров.
В DOS и Windows, как правило, используются следующие стандартные переменные окружения:
- winbootdir Главный каталог ОС Windows (в версиях NT/2000 может называться SystemRoot)
- COMSPEC Полное имя текущего командного процессора
- PROMPT Вид строки приглашения диалогового режима
- TEMP Каталог для временных файлов (иcпользуется также TMP)
- PATH Список путей, по которым ищутся исполняемые программы, если путь не указан при запуске программы. По умолчанию программа ищется сначала в текущей папке, затем в папках, перечисленных в PATH. Пути разделяются символом ;
и) FOR обеспечивает циклическое выполнение команд.
Формат:
Bash | ||
|
Понятие переменной определено выше.
Набор — это одна или несколько строк, разделенных пробелами или запятыми. Чаще всего в качестве элементов набора выступают имена файлов или маски.
Действие — любая допустимая команда. Цикл работает следующим образом: переменная последовательно принимает значения элементов набора и они подставляются в текст команды.
Примеры:
Bash | ||
|
Переменной %%a последовательно присваиваются имена файлов с расширением txt из текущего каталога и каждый файл выводится на экран.
Bash | ||
|
Команда перебирает файлы текущей директории и выясняет, есть ли на диске a: файл с таким же именем. Если такой файл существует, печатается сообщение. Вместо переменной %%r в команде ECHO каждый раз подставляется очередное имя файла.
Bash | ||
|
Если переменная %z, принимающая значения цифр от 0 до 9, совпадает с переменной окружения test, печатается сообщение.
FOR может использоваться и в командной строке, например, для многократного выполнения команды, в которой нельзя использовать маску. Пример:
Bash | ||
|
Все найденные в текущей директории файлы с расширением TXT последовательно выводятся на экран.
к)
Параметры командного файла.
При запуске из командной строки командному файлу могут быть переданы параметры. Они разделяются пробелами и количество их не может превышать девяти. Изнутри пакетного файла параметры доступны через строки вида %0, %1, …, %9, где %0 — имя самого командного файла, %1 — имя первого параметра и так далее. Например, мы запускаем командный файл MOVA.BAT командой mova.bat *.tmp *.txt *.doc
После запуска параметр %0 равен строке «mova.bat», параметр %1 — строке «*.tmp» и т. д.
Наш командный файл должен перемещать файлы, подходящие под переданные ему маски, на диск a:. Для первого параметра это легко сделать двумя командами:
Bash | ||
|
Первая копирует файлы на диск a:, вторая уничтожает источник копирования. Для второго параметра мы могли бы повторить те же команды, подставив в них %2 вместо %1. Но программа сразу же становится нерациональной, тем более, что число параметров заранее неизвестно.
Помочь нам может команда SHIFT, которая сдвигает параметры командного файла на один влево. После применения SHIFT параметру %0 присваивается старое значение %1, в нашем случае это строка «*.tmp», а параметр %1 принимает значение «*.txt». Теперь этими же двумя командами мы можем обработать любое число параметров. Позаботившись об условии выхода из программы, получаем ее окончательный текст:
Bash | ||
|
Благодаря команде SHIFT мы каждый раз обращаемся лишь к первому из переданных параметров и правильность работы не зависит от числа переданных параметров. Если очередная строка с маской не пуста, оператор goto LOOP передает управление к началу программы.
л) Дополнительные средства для написания командных файлов.
Рассмотренные выше команды пакетной обработки позволяют организовать автоматический запуск программ и обработку файлов. Не хватает лишь возможностей пользователя влиять на этот процесс, в частности, возможности выполнять действия в зависимости от выбора с клавиатуры.
В состав большинства версий DOS/Windows включена внешняя команда choice, служащая для выбора действия. Формат команды:
CHOICE [/C:клавиши] [/N] [/T:выбор,время] [сообщение]
Здесь сообщение — любая строка текста, клавиши — список буквенных обозначений клавиш, допустимых для выбора. По умолчанию прописные и строчные буквы не различаются, а если список клавиш не указан, принимается /C:YN. Параметр /N запрещает вывод после сообщения списка клавиш и знака вопроса, а после параметра /T могут быть указаны выбор, принимаемый при отсутствии ввода с клавиатуры и время в секундах, через которое он будет сделан.
Результат работы команды — установка значения ERRORLEVEL равным порядковому номеру в списке выбранной клавиши. Например, после ввода команды
Bash | ||
|
значение ERRORLEVEL будет установлено в 1 при нажатии клавиши 0 или отсутствии ввода с клавиатуры в течении 5 секунд,
а при нажатии клавиши 1 программа установит значение ERRORLEVEL, равное 2.
4
Данная книга — краткий, но исчерпывающий справочник, посвященный командной оболочке и базовым средствам командной строки двух операционных систем — Microsoft Windows XP Professional и Microsoft Windows Server 2003. Здесь рассматриваются все основные вопросы, связанные с выполнением стандартных задач администрирования из командной строки, в том числе настройка Windows-служб и управление локальными и удаленными системами, автоматизация мониторинга различных системных параметров, анализ и мониторинг процессов, управление дисками и файловыми системами, создание базовых и динамических дисков, а также RAID-массивов, конфигурирование службы каталогов Active Directory, администрирование TCP/IP-сетей и многие другие насущные вопросы. Книга адресована системным администраторам и специалистам по технической поддержке Microsoft Windows XP Professional и Microsoft Windows Server 2003, а также пользователям, желающим детально изучить командную оболочку и инструменты командной строки Windows.
Нажмите на звезду, чтобы оценить!
Прочитали: 422
Мордовский государственный университет имени Н.П. Огарева
Опубликован: 12.01.2008 | Доступ: платный | Студентов: 461 / 2 | Оценка: 4.48 / 4.12 | Длительность: 18:38:00
Теги: .net, adduser, bios, CIM, computername, iis, NDS, powershell, PRN, vbscript, WBEM, WSC, xml, внутренние команды, каталоги, ключ команды, командная строка, операционные системы, пакетный режим, потоки, приложения, провайдеры, производительность, серверы, элементы, ядро
-
1.
Windows PowerShell in Action
Manning Publications Co., 2007. – 576 p
-
2.
Борн Г
Руководство разработчика на Microsoft Windows Script Host 2.0. Мастер-класс
СПб.: Питер; М.: Издательско-торговый дом «Русская редакция», 2001. – 480 с
-
3.
Попов А.В
Командные файлы и сценарии Windows Script Host
СПб.: БХВ-Петербург, 2002. – 320 с
-
4.
Попов А.В
Windows Script Host для Windows 2000/XP
СПб.: БХВ-Петербург, 2003. – 640 с
-
5.
Попов А.В., Шикин Е.А
Администрирование Windows с помощью WMI и WMIC
СПб.: БХВ-Петербург, 2004. – 752 с
-
6.
Станек У.Р
Командная строка Microsoft Windows. Справочник администратора
М.: Издательско-торговый дом «Русская редакция», 2004. – 480 с
-
7.
Экк Т
Сценарии ADSI для системного администрирования Windows NT/2000
М.–СПб.–К.: Издательский дом «Вильямс», 2000. – 576 с
Описание
Данная книга – краткий, но исчерпывающий справочник, посвященный командной оболочке и базовым средствам командной строки двух операционных систем – Microsoft Windows XP Professional и Microsoft Windows Server 2003. Здесь рассматриваются все основные вопросы, связанные с выполнением стандартных задач администрирования из командной строки, в том числе настройка Windows_служб и управление локальными и удаленными системами, автоматизация мониторинга различных
системных параметров, анализ и мониторинг процессов, управление дисками и файловыми системами, создание базовых и
динамических дисков, а также RAID_массивов, конфигурирование службы каталогов Active Directory, администрирование
TCP/IP_сетей и многие другие насущные вопросы. Книга адресована системным администраторам и специалистам по технической поддержке Microsoft Windows XP Professional и Microsoft Windows Server 2003, а также пользователям, желающим детально изучить командную оболочку и инструменты командной строки Windows. Издание состоит из 15 глав, приложения и предметного указателя….
Детали
Артикул | 1614 |
---|---|
ISBN | 978-5-7502-0267-6 |
Количество страниц | 480 |
Серия | Справочник администратора |
Переплет | Мягкая обложка |
Печать | Черно-белая |
Год | 2012 |
Габариты, мм | 240 × 170 × 22 |
Вес, кг | 0.538 |
Командная строка Microsoft Windows. Справочник администратора.
Автор — Уильям Р. Станек
Книга Уильяма Р. Станека «Командная строка Microsoft Windows» является справочником, основу которого составляют решения конкретных задач, а не описание компонентов Windows. Книга состоит из четырех частей, в которых последовательно рассматриваются основные задачи администрирования из командной строки, обсуждаются базовые утилиты и способы управления Windows-системами (настройка Windows-служб и управление локальными и удаленными системами, автоматизация мониторинга различных системных параметров, анализ и мониторинг процессов), управление дисками и файловыми системами в Windows с помощью командной строки (управление дисками и файловыми системами, создание базовых и динамических дисков, а также RAID-массивов), администрирование сетей и управление Active Directory и многое другое. Рассматриваются две операционные системы Windows Server 2003 и Windows XP Professional.
Книга адресована администраторам Windows Server 2003, специалистам технической поддержки Windows XP Professional и администраторам, переходящим на Windows Server 2003 с предыдущих версий Windows или других платформ.
Издательство – Русская редакция
Год издания – 2004
Формат книги — PDF
Размер — 12,5 Мб
СКАЧАТЬ с gigapeta.com