【2/17】今年は「濃厚」技術トーク!@ITメールセミナー スラッシュドット    はてなブックマーク  Yahoo!ブックマークに登録  印刷
 
 

運用 Windows管理者のためのWindows Script Host入門

第1回 WSHの内部構造

1.Windows管理にWSHを活用しよう

デジタルアドバンテージ
2003/12/18


Windows管理者のための
Windows Script Host入門
WSHの内部構造
WSHスクリプト・コーディングの第1歩
WScriptオブジェクトの詳細(1)
WScriptオブジェクトの詳細(2)
WshShellオブジェクトの詳細(1)
WshShellオブジェクトの詳細(2)
WshShellオブジェクトの詳細(3)
WshNetworkオブジェクトの詳細
WshControllerオブジェクトの詳細
WSHスクリプトからのファイル操作(1)
WSHスクリプトからのファイル操作(2)

グラフィカル・インターフェイスは便利だが……

 ネットワーク管理者の毎日は憂鬱だ。新規のユーザーの追加やユーザー情報の変更、共有資源のメンテナンス、障害の原因追求など、仕事は次から次へと終わりがない。しかも実際の作業といったら、同じコマンドやツールを繰り返し実行したり、決まりきった一連のコマンドやツールを順に実行したりするだけのうんざりする内容だったりするものだ。

 周知のとおり、WindowsのメリットはGUI環境だということだ。アプリケーションはもちろんのこと、Windows環境を管理する各種の管理ツールもGUI化されたことで、初心者管理者でも管理作業に手をつけられるようになった。グラフィカル・アプリケーションのユーザーは、メニューやダイアログの表示により、自分にどのような操作が許されているのか(許されていないのか)を知ることができるからだ。

 しかしこうしたグラフィカル・ツールは、使い慣れないものをたまに使う分には非常に便利なのだが、日常的に同じような処理を繰り返し実行するには、まどろっこしくて面倒である。グラフィカル・ツールではインタラクティブな操作が基本であり、一連の操作を自動化することが難しい。例えば新しいユーザーを100人分ドメインに追加するとき、たいていのグラフィカル・ツールでは、確認用ダイアログの[OK]ボタンを100回クリックすることになるだろう。気の遠くなる話だ。

 こんなときには、一連の操作や繰り返し操作をスクリプトとして記述しておき、一気に実行できると便利である。MS-DOSのバッチ(.bat)やUNIXのシェル・スクリプトはこのような用途に活用されている。

 Windows環境においても、コマンド・プロンプトからバッチを利用することができる。しかしバッチで制御できるのは、基本的にコマンドライン・コマンドを実行することだけで、条件分岐やループ処理も可能だが、機能は極めて限定的で、とても洗練されたものとはいいがたい。

Windowsシステムの管理作業を大幅に省力化できるWSH

 このバッチに代わるものとして、Windows環境ではWindows Script Host(以下WSH)と呼ばれる機能が提供されている。これはWindowsが標準でサポートするスクリプト環境で、テキスト・ベースのスクリプトを記述することで、GUIに頼ることなく、Windows環境でさまざまな処理を実行できる。特に、WSHの大きな特徴は、オートメーション機能を持ったCOM(Component Object Model)オブジェクトをスクリプトから制御できることである。現在、多くのアプリケーションやライブラリがCOMオブジェクトとして制御可能になっている。例えば代表的なところでは、WebブラウザのInternet ExplorerやOfficeアプリケーションもその1つで、WSHを利用して、IEやOfficeをコンポーネントの1つとしてスクリプトから制御可能である。

 さらにWindows環境では、WMI(Windows Management Instrumentation)と呼ばれるCOMオブジェクト・ベースのアクセス・インターフェイスが用意されており、これを利用すればWindowsデスクトップやネットワークなどの情報取得、設定変更、モニタリングなど、Windowsシステムの運用管理にまつわるほとんどの作業をスクリプトから制御できる。同様にActive Directory環境を利用しているなら、ADSI(Active Directory Service Interface)と呼ばれるインターフェイスを利用して、Active Directoryの設定・運用・管理にまつわるカスタム・スクリプトを作成できる。

 つまりWSHスクリプトからWMIやADSIを利用することで、Windowsシステムの展開や初期設定、運用管理といった雑務を自動化し、これらにかかる手間を大幅に削減できる余地があるということだ。

 ところが実際には、こうしたWindowsシステム管理の分野でWSHが広く活用されているかといえばそうではない。WSH環境で標準的に利用可能な言語はVBScript(Visual Basic Script)やJScriptである。これらは当初、Webページのクライアント・サイド・スクリプト向けに設計されたものだった。このためマイクロソフトが提供するVBScriptやJScript関連のドキュメントやコード・サンプル、市販の解説書など、Webページに組み込むスクリプトを前提としたものが多かった。

 しかし前述したとおり、WSHは何もWebページ・スクリプトだけのものではない。管理者が、煩雑な日々の管理作業を省力化するために活用することが可能である。本稿では、こうした目的でWSHを活用したいと考えている管理者を想定し、WSHの初歩について解説していこうと思う。以後本稿では、WSHのしてサンプル・スクリプトを紹介することになるが、読者対象や目的は前挙のように想定しているので、複雑なエラー処理などは行わず、なるべくシンプルなコード例を紹介することに務める。管理者であれば、エラー時の処理などは自分で解決できるはずだ。

 

 INDEX
  [運用]Windows管理者のためのWindows Script Host入門
  第1回 WSHの内部構造
  1.Windows管理にWSHを活用しよう
    2.WSHの構成
 
 運用

ホワイトペーパーTechTargetジャパン

Windows Server Insider フォーラム 新着記事

@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

RSSフィード

スキルアップ/キャリアアップ(JOB@IT)

- PR -
- PR -

お勧め求人情報

キャリアアップ 〜JOB@IT
@IT Special -PR-
  企業の仮想化に足りない“発想”とは?
仮想化運用管理のキモは意外なところに!

New!
  操作もマニュアルも分かりやすい!
ユーザー視点で開発されたPC管理ツール

New!
  仮想化すればコストは削減できるか?
仮想化に必要な「3つの視点」を解説する

  セキュリティを知り尽くす上野氏が登壇!
@ITメールソリューションLive! in Tokyo

  運用管理の課題を“2つの観点”から分析
ユーザー満足度の高い「仮想環境」とは?

  世界に通用するストレージの作り方とは?
製品に込めた思いを富士通の開発者に聞く

  OSSで手間も時間も、障害も減った――
「マピオンの事例」オープンソース活用法

  「ノートPCの持ち出し禁止」で大丈夫?
情報漏えいを防ぐ管理手法とインフラは?

  1日の処理を1秒に――MySQLの達人が語る
「コスト削減」できるチューニング

  ドキュメント作成を自動化して、SEの作業
効率を大幅アップ! Visio 2007の魅力

  急速に広がるHyper-Vでのサーバ仮想化
そのベストプラクティスをデルが解説

  @IT主催セミナーで語られた、「担当者に
求められるセキュリティ対策」をレポート

  @IT「Windows 7」 特設サイトオープン!
最新情報・移行ノウハウを公開しています