5人のテクニカルライターが、PowerShellを使った管理効率化にチャレンジしている『Windows PowerShellによる情報インフラ効率化への挑戦』。今回は、本誌コラム『GUIユーザーのためのPowerShell入門』を執筆している岡崎俊彦氏に、Exchange Serverの管理をお願いした。

Exchange Server 2010には、スクリプト初級者でも安心して利用できる機能が用意されているので、ぜひ本稿を参考にしながら実際に試し、スキルアップに励んでほしい。

Windows Serverの操作環境とスクリプト

UNIX系OSなどに比較したWindows Serverの大きなメリットは、管理作業のしやすさにあります。UNIX系OSなどでは、コマンドラインでコマンドを実行したり、エディタで環境定義ファイルを編集したりして設定します。それに対してWindows Serverでは、Windowsで使い慣れたウィンドウやメニュー、各種コントロールパネル、管理コンソールなどを使って管理します。

Windows Serverのこうしたシステムが操作上使いやすいことは確かですが、画面を見てマウスを操作する作業は自動化が困難という問題があります。つまり、操作内容をあらかじめ登録(プログラミング)しておいて、一発起動、自動実行することが難しいのです。一方、マウスでメニューを開いたりウィンドウを開いたりして何度もクリックするよりも、キーボードからコマンドを入力した方が簡単に作業できる場合もあります。これらのニーズに応えるために登場したのが、Windows PowerShellです。

たとえば、社員のメールボックスを作成する場合、1人、2人ならともかく、数十人、数百人と登録することになると、マウスによる操作では途方もない手間がかかります。こんなときには、たとえば社員リストのファイルを作成し、プログラムで自動登録できれば便利です。あるいは、定期的に再実行しなければならない作業をあらかじめプログラムして、コマンド一発で実行できるようにしておければ便利です。タスクスケジューラに登録して、夜間に自動実行、あるいは定期的に自動実行したいこともあるでしょう。Officeアプリケーションなどの利用と異なり、サーバー管理作業の多くは、定型化できる繰り返し作業です。

Windowsでは以前からバッチコマンドを使えましたが、バッチコマンドで高度な処理をするのは困難でした。その後、WSH(Windows Scripting Host)も登場しましたが、WSHでは関数やステートメントをコマンドラインで直接実行できないため、コマンドラインとスクリプトの使い分けなければならないことが面倒でした。PowerShellはこうした問題を解決できます。

※ 現在ではWindows Server 2008、Windows Server 2008 R2、Windows 7などが標準装備しているPowerShellですが、初めて標準装備されたのはExchange Server 2007でした。

PowerShellの公式情報はこちら!

Microsoftの管理者向け技術情報サイト「TechNet」にはPowerShell関連の情報が数多く掲載されている。記事の中でも触れたが、ここで改めて紹介しておこう。

PowerShellの門をたたくときは以下のページが便利だ。

・Windows PowerShell でのスクリプティング
 http://technet.microsoft.com/ja-jp/scriptcenter/powershell.aspx

また、周辺ツールや、実際に利用できるサンプルプログラムを入手したいならこちらのページを参照するとよい。

・スクリプト センター
 http://technet.microsoft.com/ja-jp/scriptcenter/default.aspx

PowerShellが使いこなせればこれまで以上の効率化が図れることは間違いない。ぜひこれらも参考に使いこなせるようになってほしい。