Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

Windows PowerShell 独自コマンドレットの開発(2)

独自コマンドレット用ヘルプの作成

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2008/12/15 14:00

 Windows PowerShellは.NET Frameworkをベースとした非常に強力なシェルです。ただし、独自のコマンドレットを作成し、Windows PowerShellを拡張できることについてあまり知られていないかと思うため、この連載ではコマンドレットの開発手法について説明します。今回は、前回作成したコマンドレットのヘルプを作成する方法について紹介します。

目次

はじめに

 前回の記事では、Window PowerShell用の独自コマンドレットの開発手法について説明しました。今回は独自コマンドレット用のヘルプの作成方法について説明します。

開発環境について

 開発環境として、Visual Studio 2005以降およびMicrosoft Windows SDKが必要です。Microsoft WIndows SDKはダウンロードセンターからダウンロードし、インストールしてください。

 また、Windows PowerShellがインストールされていることを前提としています。インストール方法は『Windows PowerShell入門(1) - 基本操作編』を参照ください。

コマンドレットヘルプ

 PowerShellコンソールで任意のコマンドレットのヘルプを参照する場合は、Get-Helpコマンドレットを使用します。今回は、前回作成したコマンドレットのヘルプを作成して、Get-Helpコマンドレットから参照できるようにします。

 まずはヘルプの参照方法についておさらいしておきます。下記がGet-Helpの基本構文です。

Get-Help コマンドレット名称 [パラメータ]

 Get-Helpコマンドレットにはいくつかのパラメータがあり、詳細な情報を得ることが可能です。Get-Help コマンドレットで取得できる情報は下記の通りです

  パラメータなし -Detailed -Full
名前
概要
構文
詳細説明
パラメータ  
入力の種類    
戻り値の型    
メモ    
サンプル  
関連するリンク  
注釈

ヘルプファイルの作成方法

 コマンドレット用のヘルプファイルはXMLファイルとして作成します。

 ファイル名の付け方は決められており

<PSSnapInAssemblyName>.dll-Help.xml

 とする必要があります。

 よって、前回作成したコマンドレットはスナップイン名称がMy.PowerShell.Cmdletsなので

My.PowerShell.Cmdlets.dll-Help.xml

 となります。

 作成したヘルプファイルは、スナップインと同一の場所へ保存をすることで、登録されているスナップインと関連づけられます。今回作成するヘルプは前回同様、C:\Windows\System32\WindowsPowerShell\v1.0へ配置することにします。

ヘッダーとコマンドノード

 まずは以下を記述したxmlファイル(ファイル名:My.PowerShell.Cmdlets.dll-Help.xml)を作成します。

ヘッダーとコマンドノード
<?xml version="1.0" encoding="utf-8" ?>
<helpItems xmlns="http://msh" schema="maml">
</helpItems>

 以降、コマンドレット用ヘルプに関するアイテムは<helpItems>タグに下記に示すコマンドノードを追加して作成します。

ヘルプの各項目
ノード ヘルプの項目
<command:details> コマンドレット名と概要
<maml:description> 詳細説明
<command:syntax> 構文
<command:parameters> パラメータ
<command:inputTypes> 入力の種類
<command:returnValues> 戻り値の型
<maml:alertset> 注釈
<command:examples> 使用例
<command:examples> 関連リンク

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加

修正履歴

  • 2008/11/27 22:21 校正完了

著者プロフィール

  • HIRO(ヒロ)

    HIRO's.NETのHIROです。 とある半導体工場のSEです。 VB.NET, C#, PowerShellによるプログラミングを楽しんでいます。 最近はBlog でPowerShellについて書いています。 2008/07/07にPowerShell from Japan!!という...

バックナンバー

連載:Power Shellを拡張するコマンドレットの作成
All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5