- Как выполнить сценарий windows
- Почему именно сценарии?
- Scripting Host
- Элементы сценария
- Советы по составлению сценариев
- Запуск сценариев в среде Windows
- Написание и запуск сценариев в интегрированной среде сценариев Windows PowerShell How to Write and Run Scripts in the Windows PowerShell ISE
- Создание и выполнение сценариев How to create and run scripts
- Создание файла сценария To create a new script file
- Открытие существующего сценария To open an existing script
- Закрытие вкладки сценария To close a script tab
- Отображение пути к файлу To display the file path
- Запуск сценария To run a script
- Выполнение части сценария To run a portion of a script
- Остановка выполняемого сценария To stop a running script
- Написание и редактирование текста в области сценариев How to write and edit text in the Script Pane
- Ввод текста в области сценариев To enter text in the Script Pane
- Поиск текста в области сценариев To find text in the Script Pane
- Поиск и замена текста в области сценариев To find and replace text in the Script Pane
- Переход к определенной строке текста в области сценариев To go to a particular line of text in the Script Pane
- Копирование текста в области сценариев To copy text in the Script Pane
- Вырезание текста в области сценариев To cut text in the Script Pane
- Вставка текста в области сценариев To paste text into the Script Pane
- Отмена действия в области сценариев To undo an action in the Script Pane
- Повторное выполнение действия в области сценариев To redo an action in the Script Pane
- Сохранение сценария How to save a script
- Сохранение сценария To save a script
- Сохранение сценария с определенным именем To save and name a script
- Сохранение сценария в кодировке ASCII To save a script in ASCII encoding
Как выполнить сценарий windows
В этой статье я хотела бы пояснить, когда следует использовать механизмы сценариев, рассказать о некоторых базовых концепциях их составления, а также дать ряд практических советов (см. врезку «Советы по составлению сценариев» ). Кроме того, я представлю код на VBScript, с помощью которого решается некая общая задача, и прокомментирую его. Выбор пал на VBScript, поскольку Windows поддерживает этот язык. Windows поддерживает и JScript, но в предыдущих номерах журнала, как правило, использовался VBScript, так что есть смысл сохранять преемственность.
Почему именно сценарии?
Программирование сценария занимает больше времени, чем однократное выполнение задачи вручную, — даже если за дело берется опытный специалист по программированию на VBScript, который знает проблему досконально. Если же вы не профессионал, то написание и отладка сценария займет куда больше времени, чем использование графического интерфейса. Так зачем же тогда привлекать сценарий?
Основное назначение административных сценариев — автоматизация часто повторяющихся задач. Если администратор сталкивается с задачей, которую нужно выполнить более одного раза или же регулярно, как раз имеет смысл доверить ее решение сценарию. Очевидно, что в этом случае все подобные задачи будут решаться быстро и единообразно. Кроме того, написание сценариев позволит создать инструментарий администратора, не предусмотренный в графическом интерфейсе.
Если с помощью GUI решить задачу непросто, то, может быть, стоит обратиться к утилитам командной строки, которые поставляются вместе с операционной системой или в составе Resource Kit? Желательно использовать данные утилиты всегда, когда в этом есть смысл. Но в Windows 2000 набор программ с графическим интерфейсом не соответствует в точности набору утилит командной строки, и некоторые утилиты могут не удовлетворять в полном объеме решаемой задаче. Пакетные файлы не всегда хорошо справляются с ситуацией, когда входной поток данных должен быть изменен. Кроме того, утилиты командной строки и сценарии не являются взаимоисключающими методами. Можно написать сценарии, основанные на применении утилит командной строки и при этом свободные от недостатков последних.
Scripting Host
Прежде чем перейти к созданию сценария, поясню некоторые термины. Зная, что скрывается за словами scripting host, легче понять, как это может повлиять на проект сценария, допустимо ли будет использовать в сценарии выражения и т. п.
Scripting host (машина сценариев) — это операционная среда сценария. Windows не имеет понятия о VBScript: если в командной строке ввести строчку кода на VBScript, система выдаст сообщение об ошибке. Когда Windows сталкивается с файлом, расширение которого указывает на файл-сценарий, операционная система передает файл машине сценариев для интерпретации. Машина интерпретирует предложенный сценарий, а затем передает сообщения сценария (по сути — запрос на регистрацию данных) в операционную систему Windows для исполнения.
Windows поддерживает две машины сценариев: Microsoft Internet Explorer (IE) и Windows Script Host (WSH). Выбор той или иной машины влияет на используемые в сценарии возможности. Если применяется WSH, как чаще всего и бывает, то в сценарии могут использоваться объекты WSH, но не IE, и наоборот. Машина сценария не обязана понимать содержание всех мыслимых сценариев; воспринимается только сценарий, написанный на языке машины, и тот, который ею поддерживается. Для WSH и IE «понятными» являются языки VBScript и JScript.
Элементы сценария
Каждая строка сценария — это оператор, который сообщает компьютеру, что следует сделать. Исполняемые операторы обычно имеют форму типа «действие-объект»: описываются само действие и тот объект, над которым действие совершается. Сценарий может содержать условия, при наличии которых указанные операторы должны быть выполнены. Хост сценария интерпретирует строки кода слева направо и сверху вниз, так что можно, например, получив некоторые данные в строке 10, использовать их в 30-й строке. Исключение составляют процедуры. Процедуры (функции и подпрограммы) — это набор операторов, которые выполняются только при явном обращении к ним. В данном случае процедура сразу же начинает выполняться независимо от того, из какого места кода было обращение.
Исполняемые части сценария называются операторами. Неисполняемая часть сценария называется комментарием и должна предваряться апострофом (‘) или ключевым словом Rem. Например:
Комментарий может занимать всю строчку целиком или быть частью строки, содержащей исполняемый код. Сценарий следует документировать, чтобы не участвующий в его написании человек (или даже незнакомый с лексикой его языка) смог легко понять, для чего сценарий предназначен. Иногда в целях отладки программы в начале исполняемой строки ставят признак комментария.
VBScript «понимает» четыре типа данных: числа (number); строки (string); дата и время (date and time); булевы данные (boolean). Примеры чисел — скажем 2 или 9458. Строки — это любая комбинация символов, заключенная в двойные кавычки, например «рыба» и «Это строка %@#^>». Дата и время должны находиться внутри символов решетки (#) и выглядеть соответственно. Так, например, #16 January 1968# и #1/01/02 11:45 PM# — нормальные с точки зрения VBScript данные. Булевы данные — TRUE или FALSE, например x Криста Андерсон — независимый автор и консультант журнала Windows NT Magazine. Ее последняя книга — «Mastering Local Area Networks». С ней можно связаться по адресу: candersn@adelphia.net.
Советы по составлению сценариев
В следующей статье будут приведены более конкретные советы по программированию на VBScript, а сейчас ограничимся общими правилами, которых нужно придерживаться всегда:
- строки сценария должны быть короткими: они легче читаются. VBScript допускает использование знака подчеркивания для разрыва строки, а конструкция If . Then . Else поможет избавиться от нагромождения логики в одной строке;
- не скупитесь на комментарии. Сейчас вы еще помните, зачем нужна данная строка кода. Но вспомните ли вы об этом через полгода? А другой человек — разберется ли он без посторонней помощи в чужом коде? Убедитесь, что логика кода исчерпывающе объясняется в комментариях;
- смешивайте регистр написания кода. Переменная oDiskSpace читается легче, чем odiskspace или ODISKSPACE. VBScript в большинстве случаев не зависит от регистра (единственное исключение — вычисление значения ASCII-символа);
- при работе с Windows Script Host (WSH) следует использовать среду командной строки (command-line environment). WSH может исполняться в двух средах — в среде командной строки и в графической среде (по умолчанию). В первом случае вывод направляется в командное окно, если только программист не перенаправит поток данных в другое место. В графической среде вывод поступает в окна сообщений. Чаще всего используется командная среда. Некоторые операции в графической среде не работают, и если несколько строк кода генерирует вывод, то для каждой из них понадобится свое окошко сообщений. В результате работа сценария будет приостанавливаться до тех пор, пока оператор не нажмет кнопку ОК. Для исполнения сценария в командной среде следует воспользоваться одним из двух способов: предварять каждую команду сценария вызовом cscript, например:
либо установить среду командной строки в виде среды по умолчанию:
В сценариях часто используются кавычки, и, если текстовый процессор так или иначе преобразует их, сценарий просто не будет работать.
Запуск сценариев в среде Windows
Посетителей: 4856 | Просмотров: 5848 (сегодня 3)
- Двойным щелчком мыши на файле сценария или на соответствующем значке в окнах Мой компьютер, Проводник или Поиск (Find).
- В окне Выполнить (Run) введите с клавиатуры полное имя выполняемого сценария и нажмите кнопку ОК.
- В окне Выполнить введите wscript.exe с указанием имени сценария и необходимых параметров сервера и сценария.
При запуске сценария с помощью WSH можно указать, какое приложение следует использовать ≈ CSCRIPT.EXE или WSCRIPT.EXE. Приложение сервера, выбираемое по умолчанию, может быть установлено с помощью
Команды cscript //Н: Имя_сервера_сценариев.
Например, если вы устанавливаете в качестве приложения, выбираемого по умолчанию, WSCRIPT.EXE и выполняете сценарий с именем CHART.VBS, то WSCRIPT.EXE будет выбираться по умолчанию для всех файлов сценариев, имеющих расширение vbs.
Страница свойств сервера сценариев Windows позволяет устанавливать параметры, приведенные в табл. 11.5.
Таблица 11.5. Свойства сервера сценариев