【 ここから本文 】
Windows Server
ソーシャルブックマークに登録 :
印刷用ページの表示
【解説】
システム管理 完全自動化プロジェクト[入門編]
Windows Server標準の自動化機能を完全マスター!
(2010年03月04日)
日常のちょっとした、だが面倒な、あるいは単調な作業を自動化する場合は、コマンドプロンプトのバッチ環境、「Windows Script Host」「Windows PowerShell」などのスクリプト環境と、Windowsが標準で備える自動実行機能を組み合わせるのが基本だ。まずはこれらの前提環境の基礎を確認し、利用環境を準備しよう。
山市良
[Function1]
すべてのWindowsで確実に使える「バッチファイル」
「バッチファイル」(.bat、.cmd)は、MS-DOSから最新のWindowsまでで利用可能な自動実行方法である。バッチファイルはコマンドプロンプト(Cmd.exe)から実行するのが基本だが、エクスプローラ上でダブルクリックしても実行できる。また、後述するさまざまな「場所」に設定しておくことで、Windowsの動作と連動して自動実行させることが可能だ。
バッチファイルでは、単純に実行させたいコマンドラインを複数記述するだけでなく、「CALL」「FOR」「GOTO」「IF」「SHIFT」「EXISTS」などの制御コマンドや、終了コード「ERRORLEVEL」、ラベル(:ラベル名)を駆使して条件分岐やループ処理を実装することも可能だ(画面1)。
| 画面1● バッチファイルの実行例。「@echo off」は実行するコマンドラインを画面に表示させないための指定だ |
[Function2]
VBScript/JScriptの実行エンジン「Windows Script Host」
「Windows Script Host(WSH)」は、スクリプト言語の「VBScript」または「JScript」で記述されたスクリプトを実行するためのエンジンである。WSHの歴史は古く、Windowsに標準搭載されたのはWindows 98以降だ。
「Internet Explorer(IE)4.0」の標準コンポーネントとしても広く配布され、Windows 95やWindows NT 4.0向けにも提供された(現在は提供されていない)。ほとんどすべてのWindowsで利用できるスクリプト環境である。よほどレガシーなシステムでないかぎり、何も準備しなくても利用できるはずだ。
なお、本稿で紹介するWSHスクリプトは、Windows XP、Windows Vista、Windows Server 2003、およびWindows Server 2008を前提に記述しているが、それ以前のWindowsでも同じように動作する可能性はある(確認はしていないが)。
WSHでは外部プログラムを実行するための「WshShell」やファイル操作を行うための「FileSystemObject」といった標準オブジェクトのほか、Windows標準の管理インタフェースである「Windows Management Instrumentation(WMI)」や「Active Directory Service Interfaces(ADSI)」などのCOMオブジェクトを扱えるため、バッチファイルでは実現できない、複雑な処理を実装できる。使い勝手もよく、テキストファイルにコードを記述するだけで、あらゆるWindows上でコマンドプロンプトなどから簡単に実行できる。
WSHでは、VBScriptで記述されたスクリプトファイル(.vbs)、JScriptで記述されたスクリプトファイル(.js)、これらのファイルの内容を暗号化するためにエンコードしたファイル(.vbe、.jse)、およびジョブ管理に対応したXMLベースのWindows Scriptファイル(.wsf)を実行できる。なお、本稿では、WSHのスクリプトのコードをすべてVBScript(.vbs)で記述している。
WSH利用時の注意点はただ1つ、ホストエンジンの違いを理解しておくことだ。WSHには「WScript.exe」と「CScript.exe」という2種類のエンジンが含まれている。WScriptはウィンドウベース、CScriptは標準入出力に対応したキャラクタベースのエンジンだ。例えば、次のスクリプトはテキストを表示するだけの簡単なものだが、実行するエンジンによって動作が異なる。
【WSH:HelloWorld.vbs】
Wscript.Echo "Hello Windows Server World !!" このVBScriptファイル「HelloWorld.vbs」をコマンドプロンプトから実行する方法には、次の3種類がある。
(1)Wscript HelloWorld.vbs
(2)Cscript HelloWorld.vbs
(3)HelloWorld.vbs
(1)のようにWScriptエンジンを使用して実行した場合、「OK」ボタンが1つあるウィンドウにテキストが表示される(画面2)。(2)のようにCscriptエンジンを使用した場合は、標準出力(コマンドプロンプト)にテキストが表示される。(3)のようにエンジンの指定を省略した場合はデフォルトのエンジンが使用されるが、ユーザーが変更していないかぎり、WScriptエンジンが使用される。
デフォルトのエンジンをCscriptに変更する場合は、コマンドプロンプトで次のコマンドラインを実行すればよい。なお、Windows Vistaの場合は、コマンドプロンプトを「管理者として実行」で開いて、コマンドラインを実行する必要がある。
Cscript //H:Cscript | 画面2● WSHスクリプトは、ホストエンジンによってテキストの表示動作が異なる |
- 関連キーワード
- Windows Server 2008 R2|Windows Server|OSプラットフォーム|ITマネジメント|中小企業の運用管理
- 【システム管理 完全自動化プロジェクト】
- [入門編]Windows Server標準の自動化機能を完全マスター
- [実践編]今すぐ使える自動化プロジェクト 9選
- プロジェクト(1) マウス操作の自動化 〜 IEのキャッシュを一発クリア
- プロジェクト(2) ファイル管理の自動化 〜 不要なファイルや古いファイルを整理
- プロジェクト(3) テキスト置換の自動化 〜 ドラッグ&ドロップ操作での一括置換
- プロジェクト(4) 更新履歴確認の自動化 〜 インストール済み更新プログラムを簡単に検索
- プロジェクト(5) 電子メール送信の自動化 〜 大量のあて先に電子メールをバッチ送信
- プロジェクト(6) システム構成の自動化 〜 新しいネットワークを検出したタイミングでの自動実行
- プロジェクト(7) 電源管理の自動化[1] 〜 コンピュータを定時にシャットダウン
- プロジェクト(8) 電源管理の自動化[2] 〜 コンピュータを定時に自動起動
- プロジェクト(9) 監視の自動化 〜 スクリーンセーバを監視してコンピュータの使用状況を記録
【解説】Windows Server 2008 R2 シナリオ別活用法[準備編]


最新サーバOSのメリットを今すぐ体感しよう!
【解説】 Server Core運用管理マニュアル[Part1]

コマンドラインによるサーバの初期構成
【解説】Windows PE 完全活用ガイド―[1]PEを使いこなすための基礎知識

システム管理者に使いこなしてほしい“究極”のトラブル解決ツール
【初級アドミン ID管理編 第1回】なぜユーザーIDと認証が必要なのか

初級アドミンの多忙なる一日
【連載】【インタビュー】投資ポイントがわかる! 中堅・中小企業のIT管理(1)

中堅・中小企業の悩みを解決する「JP1 Ready Series」















































