Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Вывод сообщений и дублирование команд. Язык интерпретатора Cmd.exeСтр 1 из 2Следующая ⇒
Язык интерпретатора Cmd.exe. Командные файлы Язык оболочки командной строки (shell language) в Windows реализован в виде командных (или пакетных) файлов. Командный файл в Windows — это обычный текстовый файл с расширением bat или cmd, в котором записаны допустимые команды операционной системы (как внешние, так и внутренние), а также некоторые дополнительные инструкции и ключевые слова, придающие командным файлам некоторое сходство с алгоритмическими языками программирования. Например, если записать в файл deltmp.bat следующие команды: C: \ CD %TEMP% DEL /F *.tmp и запустить его на выполнение (аналогично исполняемым файлам с расширением com или exe), то мы удалим все файлы во временной директории Windows. Таким образом, исполнение командного файла приводит к тому же результату, что и последовательный ввод записанных в нем команд. При этом не проводится никакой предварительной компиляции или проверки синтаксиса кода; если встречается строка с ошибочной командой, то она игнорируется. Очевидно, что если вам приходится часто выполнять одни и те же действия, то использование командных файлов может сэкономить много времени. Вывод сообщений и дублирование команд По умолчанию команды пакетного файла перед исполнением выводятся на экран, что выглядит не очень эстетично. С помощью команды ECHO OFF можно отключить дублирование команд, идущих после нее (сама команда ECHO OFF при этом все же дублируется). Например, REM Следующие две команды будут дублироваться на экране … DIR C: \ ECHO OFF REM А остальные уже не будут DIR D: \ Для восстановления режима дублирования используется команда ECHO ON. Кроме этого, можно отключить дублирование любой отдельной строки в командном файле, написав в начале этой строки символ @, например: ECHO ON REM Команда DIR C: \ дублируется на экране DIR C: \ REM А команда DIR D: \ — нет @DIR D: \ Таким образом, если поставить в самое начало файла команду @ECHO OFF то это решит все проблемы с дублированием команд. В пакетном файле можно выводить на экран строки с сообщениями. Делается это с помощью команды ECHO сообщение Например, @ECHO OFF ECHO Привет! Команда ECHO. (точка должна следовать непосредственно за словом " ECHO") выводит на экран пустую строку. Например, @ECHO OFF ECHO Привет! ECHO. ECHO Пока! Часто бывает удобно для просмотра сообщений, выводимых из пакетного файла, предварительно полностью очистить экран командой CLS. Используя механизм перенаправления ввода/вывода (символы > и > >), можно направить сообщения, выводимые командой ECHO, в определенный текстовый файл. Например: @ECHO OFF ECHO Привет! > hi.txt ECHO Пока! > > hi.txt С помощью такого метода можно, скажем, заполнять файлы-протоколы с отчетом о произведенных действиях. Например: @ECHO OFF REM Попытка копирования XCOPY C: \PROGRAMS D: \PROGRAMS /s REM Добавление сообщения в файл report.txt в случае REM удачного завершения копирования IF NOT ERRORLEVEL 1 ECHO Успешное копирование > > report.txt
|