2017年08月18日 08時00分 UPDATE
特集/連載

いまさら聞けないPowerShell入門(前編)Windows管理者がPowerShellを習得すべきこれだけの理由

PowerShellはWindowsを管理するための強力なツールであり、マスターすべき多くの理由がある。さらに、Linuxユーザーにとっても無視できない存在になるだろう。

[Tim Anderson,Computer Weekly]
Computer Weekly

 スクリプティングおよび自動化プラットフォーム「Windows PowerShell」(以下「PowerShell」)の歴史は、2002年にさかのぼる。その頃から同社は、先行発表していたホワイトペーパーで「Monad」(コードネーム)というプロジェクトを「システム管理の自動化に向けた次世代プラットフォーム」としてアピールしていた。「Monad manifesto」(Monadマニフェスト)と題したこのホワイトペーパーの著者はジェフリー・スノーバー氏だった。同氏は現在、Microsoftで「Windows Server」「Azure Stack」「System Center」などの製品を統括するエンタープライズクラウドグループのチーフアーキテクトとなっている。

Computer Weekly日本語版 8月16日号無料ダウンロード

本記事は、プレミアムコンテンツ「Computer Weekly日本語版 8月16日号」(PDF)掲載記事の抄訳版です。本記事の全文は、同プレミアムコンテンツで読むことができます。

なお、同コンテンツのEPUB版およびKindle(MOBI)版も提供しています。

ボタンボタン

 ホワイトペーパーの記述と最終的にリリースされた物の間に多少の違いはあるものの、この文書には多くのテーマが含まれている。Monadは.NETプラットフォームに基づいていて、「cmdlet」(コマンドレット)と呼ばれるコンポーネントを利用することで拡張できる。また、.NETオブジェクトのパイプライン化をサポートしており、オブジェクトからの出力を次の入力につなげるようになっている。MonadはBourne Shell(UNIXのシェル)構文にも基づいている。Bourne Shellは、UNIXライクなシステムのコマンドシェルに強い影響を与え続けている。例えば、シェルの1つである「Bash」の名前は「Bourne Again Shell」を表している。

 Monadマニフェストには、Windowsでスクリプティングを実行するためのオプションを複数用意していたという記述もある。つまり、cmd.exeで実行されるバッチファイルか、VBScriptを実行するCScript.exeでホストのスクリプティングを行うかの二者択一だ。ただしCScript.exeは、将来のバージョンのWindows Serverもサポートするには機能的に十分とはいえなかった。

Windowsのコアコンポーネント

 PowerShellはWindowsのコアコンポーネントであり、同時にシステム管理者にとって不可欠なツールとなっている。その理由を一言でまとめるなら「自動化」で、GUI(グラフィカルユーザーインタフェース)ツールには不向きの機能だ。

 スクリプトに記述できるものは全て自動化できる。自動化は、DevOpsやクラウドプラットフォームの管理者にとって必須の機能だ。

 もう1つ、Windows Serverに必ずGUIがあるとは限らないという要因もある。「Server Core」や「Nano Server」は機能を絞り込んだWindows Serverなので、PowerShellは不可欠だ。「Office 365」を使用する場合、「Exchange Online」などのサービスを管理するにはWebブラウザで操作するか、PowerShellを使用するかのどちらかの方法しかない。最も完全で強力なアクセスを提供するのはPowerShellだ。Exchangeをオンプレミスで実行している場合もPowerShellが必須のタスクが幾つかあるので、PowerShellを覚えておくと後々役に立つ。

 PowerShellが特に有用なタスクが存在する。例えば複数のリストに同じ処理を繰り返す場合が挙げられる。「Active Directory」はその顕著な例だ。Active Directoryモジュールは自動的に、あるいは「リモートサーバー管理ツール」をインストールする際に「ドメインコントローラ」にインストールされる。

 Get-ADUserコマンドレットは、全てのユーザーをコレクションに取得する。リストをフィルタリングするか、foreachループを使って各ユーザーオブジェクトを検査する。Set-ADUserを使ってユーザー属性やグループメンバーシップを変更することもできる。

言語の学習

ITmedia マーケティング新着記事

news042.jpg

電通テックとトライベック・ストラテジー、「クイックデジマ」を共同で販売開始
デジタルマーケティング施策を実施する上で必要最低限の機能をパッケージ化し、低価格で...

news010.jpg

テレビ視聴に関するアンケート調査――スカパーJSAT
スカパーJSATは、全国の10〜60代の男女を対象に「テレビ視聴に関するアンケート調査」を...

news143.jpg

広告運用支援ツール「AdNote」がバージョンアップ 予算調整、カスタムレポート、分析の業務を自動化
ブレインパッドは、広告運用支援ツール「AdNote」のバージョンアップを発表した。