Windows 7で新たに追加された機能の1つにWindows PowerShellがある。マイクロソフトが提供するコマンドライン環境とスクリプティング機能の1つである。実は、Windows Vistaにおいて標準搭載される予定であったのであるが、Vistaでは見送られた経緯がある。これまでのコマンドライン環境といえば、コマンドプロンプトであり、お世辞にも使いやすいものとはいえなかった。では、PowerShellはどうなのであろうか?本稿ではそのあたりを見ていきたい。

Windows 7ソフトウェアレビュー - アクセサリのワードパッド/ペイント編
Windows 7ソフトウェアレビュー - Windows Media Player 12編
Windows 7ソフトウェアレビュー - 大きく進化した電卓編
Windows 7ソフトウェアレビュー - 上級者にも魅力的になったバックアップとデフラグ編
Windows 7ソフトウェアレビュー - 拡大鏡/スクリーンキーボード/付箋編
Windows 7ソフトウェアレビュー - アクセサリの数式入力パネルで楽々数式入力編
Windows 7ソフトウェアレビュー - PCを快適に! パフォーマンスモニター編

Windows PowerShellの起動と終了

まずは、PowerShellを起動してみよう。スタートメニューから[すべてのプログラム]→[アクセサリ]→[Windows PowerShell]へと進む。ここで、[Windows PowerShell]を選択する(図1)。

図1 スタートメニューのPowerShell

すると、図2のようにPowerShellが起動する。

図2 PowerShellの起動

「>」(これをプロンプトと呼ぶ)の後に続けてコマンド(正しくは後述するコマンドレット)などを入力していく。さて、起動したばかりであるが、PowerShellの終了方法を覚えておこう。方法は2つある。右上にある閉じるボタン([×])をクリックするか、プロンプトに「exit」と入力する(図3)。

図3 PowerShellの終了

PowerShellの基本

さて、ここではPowerShellの基本をいくつか紹介しよう。なお、PowerShellについて、より詳しく知りたいのであれば、「ゼロからはじめるWindows PowerShell」などを参照していただきたい。PowerShellでは、プロンプトに対し命令を入力していく(これを対話的操作ともいう)。その命令が、PowerShellでは標準で129個用意されており、その命令のことをコマンドレットと呼ぶ(略記するにはcmdletと書く)。少々、専門的になるが、かつてのMS-DOSの内部コマンドのようなものと思えばよいだろう。さて、まずはPowerShellで使用可能なコマンドレットを表示してみよう。プロンプトに「Get-Command」と入力する(図4)

図4 Get-Commandコマンドレット

Get-Commandコマンドレットは、利用可能なコマンドレットなどをすべて表示するものである(実際には、かなりの量が表示されるのであるが、本稿では逆スクロールし、コマンドレットを入力した状態を表示している)。コマンドレット名は、動詞の後にハイフンで名詞を繋ぎ、およその意味が推察しやすいようになっている。また、コマンドレットの入力は、大文字と小文字の区別をしない。つまり「Get-Command」としても「get-command」としても同じコマンドレットと解釈される。

さて、図4を見ると、「CommandType」にいくつか種類がある。これは、コマンドレット以外に利用可能な命令などである。たとえば、Aliasであるが別名である。かつて、MS-DOSでは、ファイルなどを表示するdirというコマンドがあった。PowerShellでは、この機能をGet-ChildItemコマンドレットがその役目を持つ(図5)。

図5 Get-ChildItemコマンドレット

PowerShellでは、かつてのdirが使えるように、dirがエイリアスとして定義されている。

図6 dirエイリアス

Get-ChildItemコマンドレットと同じ結果となる。同様にUNIXでは、lsコマンドがその役目を担う。こちらもエイリアスが定義されている。

図7 lsエイリアス

すべて同じ結果となる。PowerShellは、UNIXユーザーなどにも使いやすい工夫がなされているのだ。最後にGet-Helpコマンドレットを紹介しよう。コマンドレットのヘルプを表示する(図8)。

図8 Get-HelpコマンドレットでGet-ChildItemコマンドレットのヘルプを表示

PowerShell ISE

さて、Windows 7では、PowerShellと同時に、PowerShell Integrated Scripting Environment(ISE)も同時にインストールされる。PowerShellの統合環境ともいうべきものである。一番下のペインでは、コマンドペインである。PowerShellのコンソールで行う場合と同じように、対話型の実行が可能である。コマンドレットなどを入力して、Enterキーを押すと実行される

図9 コマンドペインに「ls」と入力

結果は中央のペイン(出力ペイン)に表示される。また、作成したスクリプトの実行やデバッグも行うことができる。一番上のペインは、スクリプトペインと呼ばれ、関数、スクリプト、およびモジュールを作成、編集、デバッグ、および実行を行う。ここでは、複数のタブを使い、同時に複数のスクリプトの実行やデバッグも可能である。さらに、構文の色指定、タブ補完、視覚的なデバッグ機能、状況依存のヘルプなどが可能である。実際に、実行した例が図10である。

図10 スクリプトペインの実行