PowerShellの実行環境構築 |
[2013/1/25] 実行ポリシーの変更について追記しました。
PowerShellとは、Windows OSを開発しているMicrosoft社からリリースされているオブジェクト指向に対応したスクリプト言語です。 Windows環境である決まった一連の処理を実行させるために利用されています。 以前使われていた*.batによるバッチ処理に代わるものとして開発されました。 スクリプトは、*.ps1というファイルに記述して、PowerShellプロンプトから実行します。 PowerShellプロンプトはコマンドプロンプトが対応できなかったUTF8による日本語表示にも対応しています。 最近のアプリは移植性のためにUTF8が標準となりつつあることからこれからはPowerShellを利用することが望ましいでしょう。 なお、PowerShellは上位互換性があり、batファイルも実行可能です。 PowerShellには日本語対応だけでなく、VBScriptの様に変数操作ができたり.NET Frameworkの恩恵が受けられるというメリットもあります。 Visual Studioでの開発に慣れた方ならより親和性が高い言語です。
PowerShellスクリプトを実行するには、実行環境の構築が必要です。 環境構築に関しては、 CodeZineの記事が詳しいのでそちらをご覧になってください。 Windows 7以降のOSでしたら最初からインストール済みですので特に何もしなくて結構です。 なお、拡張子の書き換えを行うことになりますので拡張子は表示させておいてください (拡張子の表示法への外部リンク: Win7, Win XP)。
PowerShellスクリプトはセキュリティの観点からデフォルトでは実行できません。 セキュリティが低下しますが、それを受容して実行できるようにします。 設定には、コマンドプロンプトもしくはPowerShellプロンプトを起動させてコマンドを実行します。 詳細は@ITの記事を参照してください。
Get-ExecutionPolicy | コマンド実行時のポリシーを表示する。 |
Set-ExecutionPolicy Unrestricted | コマンド実行のポリシーを変更し、署名のないスクリプトでも実行可能にする。 |
ではいよいよスクリプトを実行してみましょう。 メモ帳などのテキストエディタを開いて、「Write-Host "Hollow World"」と書いたら適当な名前を付けて保存して下さい。 保存後に、ファイルの拡張子をps1へ書き換えます。 次に、スタートメニューからPowerShellを見つけて、実行したいスクリプトのあるフォルダへショートカットを作ります。 できたショートカットを右クリックしてプロパティを開いて、作業フォルダを空欄にしてください。 その作業後にプロンプトを立ち上げます。 立ち上げ後に、".\"と打った後で先に保存したスクリプトファイル名を入力してエンターキーを押せば実行されます。 ちゃんと"Hollow World"と表示されましたでしょうか?
ところで、プログラミングにはデバッグ作業が欠かせません。 よほど短いコードでもない限り、自分で書いたプログラムが一発で思ったとおりに動くなんてことは万に一つしかありません。 従ってデバッガと一緒になったIDE(統合開発環境)が必要となります。 PowerShellには標準の開発環境として、PowerShell ISE(Integrated Scripting Environment)が用意されています。 ISEを使えば、コード中に付けたデバッグで一時的に処理を止めて変数の中身を確認することが可能です。 動作も軽いため、メモ帳よりもこちらでコードの開発をした方が良いでしょう。
[1]牟田口 大介,Windows PowerShell ポケットリファレンス,技術評論社,2008/4. : コマンド類について調べる際には必須です。基本的な文法についても解説されています。一冊手元にあると良いでしょう。