Краще, ніж пакет: підручник з Windows Scripting Host

Якщо ви деякий час працювали в комп'ютерному світі, то, ймовірно, ви досить добре знайомі з пакетними завданнями. ІТ-фахівці по всьому світу використовували їх для виконання всіляких автоматизованих комп'ютерних завдань і особистих завдань. Насправді Пол нещодавно розповів про те, як написати такий файл.

Проблема з пакетними завданнями в тому, що вони були дуже обмежені. Набір команд був дещо коротким і не передбачав великої функціональності, коли йшлося про структуровану логіку з використанням циклів if-then, for, next і while.


Пізніше з'явився Windows Scripting Host. MS Windows Scripting Host - це багатомовна утиліта для сценаріїв, яку Microsoft почала встановлювати як стандартну на всі ПК починаючи з Windows 98 і вище. Другим поколінням інструменту його перейменували в Microsoft Script Host (MSH).

Підручник Microsoft зі створення сценаріїв

Тут, у MUO, ми любимо комп'ютерну автоматизацію. Наприклад, Варун розповів про Sikuli, інструмент для написання сценаріїв автоматизації, а Гай показав вам, як використовувати AutoIt. щоб автоматизувати завдання. Крута річ в MSH полягає в тому, що якщо у вас є якийсь пост-Win 98 ПК, ви можете написати «пакетний» скрипт на різних мовах.

Доступні мови включають JScript, VBA і VBscript. Також можливо написати сценарії на Perl, Python, PHP, Ruby або навіть Basic, якщо у вас є правильна реалізація з відповідним механізмом сценаріїв.

Особисто я добре знаю Visual Basic, тому зазвичай вибираю VBScript. Принадність тут у тому, що вам не потрібно ніякого спеціального програмного забезпечення для програмування або компілятора. Просто відкрийте Блокнот і напишіть свій сценарій, точно так само, як ви написали свої пакетні завдання.

Не встановлюючи нічого, ви можете писати скрипти в VB. Найпростіший сценарій - це друк тексту у спливаючому вікні, наприклад:

:


Збережіть файл как.vbs, і Windows розпізнає і запустить його. Ось що відбувається, коли ви двічі клацаєте файл вище:

:

Ви можете написати більш просунуті сценарії, використовуючи мови, до яких ви звикли. Для більшої гнучкості помістіть < job > та < script language = «VBScript» > (або будь-яку іншу мову, яку ви виберете) навколо кожного сегмента коду у файлі та збережіть його як файл.wsf. Таким чином, якщо ви укладаєте код у певні мовні теги сценарію, ви можете використовувати кілька мов в одному файлі.

Щоб показати вам, наскільки це круто, я вирішив написати скрипт, який би зв'язувався з атомним годинником NIST, щоб перевірити поточний час. Якщо вранці, він автоматично відкриває мій поштовий клієнт Thunderbird. Якщо полудень, це відкриє мій браузер для CNN.com. Цей умовний скрипт дає вам можливість зробити ваш комп'ютер набагато більш інтелектуальним. Якщо ви запускаєте цей скрипт під час запуску комп'ютера, ви можете автоматично запускати його залежно від того, який час дня зараз.

:

Перша частина скрипту відправляється на сервер часу "http://time.nist.gov:13 "і отримує поточний час. Після правильного форматування він встановлює час комп'ютера. Кредит, який заслуговує довіри, цей скрипт був адаптований з чудового скрипту TomRiddle на VisualBasicScript.com. Щоб заощадити час, завжди знаходьте потрібний приклад коду в Інтернеті, а потім налаштовуйте його відповідно до своїх потреб.

Ось що робить скрипт, використовуючи щойно наведений вище код.


:

Тепер, коли скрипт працює і буде синхронізувати мій комп'ютер при кожному запуску, настав час визначити, що запускати автоматично, залежно від часу доби. У Windows Scripting Host це завдання так само просте, як оператор If-Then, який перевіряє час доби у функції «Зараз», а потім запускає відповідне програмне забезпечення.

:

При запуску цього сценарію з 8 до 10 ранку мій поштовий клієнт Thunderbird запуститься. При запуску з 11:00 до 13:00, він запускає CNN.com у браузері. Як ви можете бачити, просто створюючи і додаючи трохи інтелекту в файл сценарію, ви можете зробити досить класну комп'ютерну автоматизацію.

До речі, дуже корисно мати довідник команд сценаріїв, коли ви пишете ці сценарії. Якщо ви, як і я, користуєтеся VBScript, великий ресурс - це ss64.com, який перераховує всі команди VBScript в алфавітному порядку на одній сторінці.


:

Написання сценаріїв саме по собі нічого не автоматизує, тому що вам все одно доведеться запускати їх вручну. Щоб завершити автоматизацію за допомогою Windows Script Host, перейдіть на планувальник завдань на панелі керування (в області адміністратора) і виберіть створення завдання.

:

Планувальник дозволяє запускати ваш сценарій для цілого ряду подій, таких як час доби або за певним розкладом, коли відбувається системна подія або коли комп'ютер завантажується вперше або увійшов до системи. Тут я створюю заплановане завдання для запуску скрипту вище при кожному запуску ПК.

:


Це тільки дуже коротке керівництво по Windows Scripting Host. Враховуючи кількість команд і функцій, доступних на будь-якому з цих мов сценаріїв, можливості автоматизації всіляких класних завдань на вашому комп'ютері значною мірою обмежені тільки вашою уявою.

Деякі з найкращих сайтів для пошуку попередньо написаних сценаріїв, які ви можете використовувати або налаштовувати, включають наступне:

  • Microsoft Script Center - прямо від Microsoft і включає такі категорії, як Office, робочий стіл, бази даних і активний каталог
  • Продуктивність комп'ютера - цей сайт у Великобританії пропонує кращий вибір VBScripts, які я бачив онлайн.
  • Комп'ютерна освіта - тут ви знайдете невелику колекцію сценаріїв, але вони дуже корисні, і всі вони працюють.
  • Lab Mice - приголомшлива збірка ресурсів пакетного програмування, наприклад, набір сценаріїв входу в систему.

Ви коли-небудь використовували Windows Script Host? У вас є якісь круті поради або приклади, якими можна поділитися? Запропонуйте своє розуміння і поділіться своїм досвідом у розділі коментарів нижче.

COM_SPPAGEBUILDER_NO_ITEMS_FOUND