← Back to Home

PowerShell Snapインの作成と使用

Views: 948

You can try the commands on our interactive shell.

PowerShell Snapインの作成と使用

=====================================================

PowerShell には、モジュール、Snapイン、およびプロファイルを通じて機能を拡張する方法が幾つあります。この記事では、PowerShell Snapインの作成と使用について説明します。

PowerShell Snapインとは?

Snapインは、PowerShell にロードされたコマンド(Cmdlet)集合で、追加の機能を提供します。モジュールとは異なり、Snapインはよりrobustで、Windows シェルとのインタラクションが可能です。

Custom PowerShell Snapインの作成

Custom PowerShell Snapインを作成するには、以下の手順に従ってください。

Step 1: 新しいディレクトリーを生成

新しいディレクトリーを作成してSnapインのroot ディレクトリーとする必要があります。

mkdir MySnapin
cd MySnapin

Step 2: マニフェストファイル(MySnapin.dll-manifest.xml)を生成

マニフェストファイルは、Snapインとその内容を定義するために使用します。手動で作成したり、PowerShell-SnapinManifest モジュールの New-SnapinManifest cmdlet を使うことができます。

以下に、マニフェストファイルの例を示します。

<?xml version="1.0" encoding="utf-8"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1">
  <name>MySnapin</name>
  <filename>MySnapin.dll</filename>
  <dll>
    <class>MySnapin.Cmdlets.MyCmdlet, MySnapin</class>
  </dll>
</assembly>

Step 3: DLL ファイル(MySnapin.dll)を生成

DLL ファイルには、Cmdlet が含まれる必要があります。手動で作成したり、Add-Type cmdlet を使って Cmdlet を定義することができます。

以下に、DLL ファイルの例を示します。

# MyCmdlet.cs

using System;
using System.Management.Automation;

public class MyCmdlet : PSCmdlet
{
    [Parameter(Mandatory = true)]
    public string InputString { get; set; }

    protected override void ProcessRecord()
    {
        WriteObject("You entered: " + InputString);
    }
}

Step 4: Snapインを登録

Snapインを登録するには、以下のコマンドを実行してください。

# Install-Snapin : The term 'Install-Snapin' is not recognized as the name of a cmdlet, function, script, or operable program.
# Check the spelling of the name, or if a file exists with that name, you can try to open it from this location.

Get-Command -Module PowerShell -Name Install-Snapin | Out-Null
Install-Snapin -Path MySnapin.dll -PassThru

Step 5: Snapインをロードと使用

Snapインをロードし、使用するには、以下のコマンドを実行してください。

# You can now use your cmdlets in PowerShell.

Get-Command -Module MySnapin | Format-Table -AutoSize
MyCmdlet -InputString "Hello, World!"

Custom PowerShell Snapインの使用

Snapインを作成し、登録した後は、以下のように使うことができます。

Step 1: Snapインをロード

Snapインをロードするには、以下のコマンドを実行してください。

# You can now use your cmdlets in PowerShell.

Get-Command -Module MySnapin | Format-Table -AutoSize

Step 2: SnapインのCmdlet を使用

SnapインのCmdlet を使用するには、以下のように実行してください。

# You can now use your cmdlets in PowerShell.

MyCmdlet -InputString "Hello, World!"

And you’ll see the output: You entered: Hello, World!

まとめ

この記事では、PowerShell Snapインの作成と使用について説明しました。Snapインを作成するには、マニフェストファイル、DLL ファイルを生成し、Snapインを登録した後、ロードして使用する必要があります。

PowerShell には、モジュール、Snapイン、およびプロファイルを通じて機能を拡張する方法が幾つあります。Snapインを作成することで、PowerShell の機能をさらに拡張することができます。

Try it Now!