みなさん、こんにちは。

PowerShell、使っていますか?PowerShell は DOS コマンドや VBScript に代わる新たな管理シェルとして、Windows Server 2008 にサーバー OS としては初めて標準搭載され、Windows Server 2008 R2 でも引き続き標準搭載されています。

それだけではなく、Windows Server 2008 R2 では PowerShell のバージョンも 2.0 が搭載されており、新たなコマンドレットや命令体系が追加されたり、PowerShell ISE というリッチなスクリプトエディタ&実行環境も搭載されて、さらに便利になっています。

ちなみに、コマンドレットとは、通常幾つかのステップ(ロジック)を踏まなければならない処理を一つの命令にまとめて、より簡潔に PowerShell で処理を記述できるようにしたものとお考えいただいて構いません。

この記事では、Windows Server 2008 R2 で追加されたコマンドレットの概要と、VBScript とのコード量比較をご紹介します。

■ Windows Server 2008 R2 で新たに追加されたコマンドレット

Windows Server 2008 R2 でのコマンドレットの追加に関しては、TechNet サイトにて公開されていますが、一部に Windows Server 2008 R2 ベータ版の頃の古い情報が残っており、製品版と違う記述がみられますので、この記事で補足させていただきます(並行して TechNet の当該記事の修正も依頼中です)。

Windows Server 2008 R2 で新規に追加されたコマンドレットはこちらです。

image

詳細はこちらをご覧ください(申し訳ありません、英語になります)。
http://technet.microsoft.com/en-us/library/ee407531(WS.10).aspx

日本語の TechNet サイトで公開されている一覧との差異は、以下になります(取り消し線が Windows Server 2008 R2 製品版に搭載されていないもの、赤字が追加で搭載されているもの)

Active Directory ドメイン サービス コマンドレット
Active Directory Rights Management サービス コマンドレット
Active Directory フェデレーション サービス(AD FS) 2.0 コマンドレット※
AppLocker コマンドレット
ベスト プラクティス アナライザー コマンドレット
Windows BitLocker ドライブ暗号化コマンドレット
BITS コマンドレット
DHCP サーバー サービス コマンドレット
診断およびサポートのコマンドレット
フェールオーバー クラスタリングのコマンドレット
グループ ポリシー コマンドレット
Web サーバー (IIS) コマンドレット
ネットワーク負荷分散コマンドレット
サーバー マネージャー コマンドレット
サーバー移行コマンドレット
リモート デスクトップ サービス コマンドレット → プロバイダの提供(詳細
Windows Server バックアップ コマンドレット
Windows PowerShell コマンドレットおよび Windows PowerShell Integrated Scripting Environment (ISE)
WS-Management コマンドレット

※ AD FS 2.0 コマンドレットは、AD FS 2.0 のモジュールを弊社ダウンロードサイトからダウンロードし、インストールした後に利用可能となります(AD FS 2.0 自体は現在 RC 版が公開されており、まもなく正式版公開予定です)。

■ VBScript vs PowerShell コード比較

では、PowerShell が使えるのと使えないのでは、どれほどスクリプト量に差が出てくるのか、簡単な比較でご紹介します。

下記に載せているのは、① Active Directory に対する検索、② ファイルのアクセス権を取得、という 2 つの処理を、それぞれ VBScript で組んだ場合と、PowerShell で組んだ場合のコード量の比較です。

image

image

 

いかがでしょう?コード量の差を実感していただけたのではないでしょうか。新しいスクリプト言語を覚えるのが億劫だと思っていた方も、同じ処理をするのにこれだけコード量が違うとなると、ちょっと覚えてみようという気になりませんか?

是非 PowerShell を活用していただき、日々のサーバー管理を楽にしていただければと思います。

マイクロソフト株式会社
山崎 淳一