PowerShellのスキルアップ方法

PowerShell 2.0からはインタラクティブシェルのみならず統合スクリプティング環境が用意されている。PowerShell ISEがそれだ。ヘルプも用意されているため、基本的なスキーマを理解したら、このヘルプを読みながら逐次実行してみよう。

PowerShell統合開発環境 - PowerShell ISE

PowerShellヘルプ

ここまでくれば次は応用だ。PowerShellで扱う対象は基本的に.NET Frameworkそのものであり、これまでに提供されてきたCOMも扱える。あとはPowerShellではなく、.NETやCOMのそれぞれのヘルプやドキュメントを参照しながら作業することになる。

次のWebサイトはブックマークなどに登録して、すぐに参照できるようにしておくとよいだろう。

・Windows PowerShell でのスクリプティング
 http://www.microsoft.com/japan/technet/scriptcenter/hubs/msh.mspx

・.NET Framework デベロッパーセンター: 開発 - MSDN
 http://msdn.microsoft.com/ja-jp/netframework/default.aspx

PowerShellはプログラミング言語としての仕様はシンプルだ。言語そのものの複雑性に悩まされることは少ないだろう。

PowerShellを使うべき理由

シェルスクリプトが欲しいのであれば、Cygwinをインストールするなり、仮想環境にLinuxやFreeBSDをインストールしてssh経由でログインするなりして使えばよいということになるが、PowerShellを使い始めた方がよい理由がいくつかある。

まとめると次のようになる。

  • Windowsの提供している機能をダイレクトリに利用できる。サードパーティソフトウェアでは対応している機能に限りがあるが、PowerShellであれば広範囲に渡ってWindowsプロダクトの機能をダイレクトに利用できる。

  • GUIとCUIに連続性がある。Microsoftは自社プロダクトをPowerShellベースへ置き換え始めている。GUIはPowerShellを生成するためのツールという位置づけになり、背後ではPowerShellを生成して実行している。一回のみの実行はGUIでおこない、複数実行するようになったらGUIツールの生成するPowerShellスクリプトをコピーして編集して使いまわせばよい。

  • 今後さらにPowerShellが適用できる範囲が広がる。MicrosoftはPowerShellをシステムの根幹の機能として進めている。PowerShellのエクスペリエンスやそこで得たスキルは特定のバージョンやプロダクトに限定されるものではなく、今後登場するMicrosoftプロダクトにそのまま適用できる。知れば知るほど強力になる。

  • .NET Frameworkの機能を利用できる。最終的にWindowsの機能を自在に制御できるようになるという魅力がある。プログラミングするかしないかというところには大きな壁が存在するため、プログラミングしないユーザにとってそれでもPowerShellの敷居は高いものかもしれない。しかしコマンドを実行する要領で実際に役に立つツールをすぐに作れるという体験は、PowerShellになれる取っ掛かりとしては現実的で入りやすい。

これまでシェルスクリプトでシステム管理やツールの作成などをおこなってきたのであれば、PowerShellはおすすめできるツールだ。システムに使われているという、あの感覚から、システムをツールとして使いこなしているという感覚に変わるというおもしろさがある。

PowerShellの公式情報はこちら!

Microsoftの管理者向け技術情報サイト「TechNet」にはPowerShell関連の情報が数多く掲載されている。

記事中でも紹介したが、門をたたくときに最初にアクセスすべきは以下のサイト。

・Windows PowerShell でのスクリプティング
 http://www.microsoft.com/japan/technet/scriptcenter/hubs/msh.mspx

また、周辺ツールや、実際に利用できるサンプルプログラムを入手したいならこちらのサイトが便利だ。

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

PowerShellを使いこなせればこれまで以上の効率化が図れることは間違いない。ぜひこれらの情報も参考に、習得に励んでほしい。