次の方法で共有


PSSnapinsについて

概要

Windows PowerShell スナップインについて説明し、その使用方法と管理方法を示します。

詳細説明

Windows PowerShell スナップインは、Windows PowerShell プロバイダーやコマンドレットを含む Microsoft .NET Framework アセンブリです。 Windows PowerShell には一連の基本的なスナップインが含まれていますが、他のユーザーが作成または取得するプロバイダーとコマンドレットを含むスナップインを追加することで、Windows PowerShell の機能と価値を拡張できます。

スナップインを追加すると、そのスナップインに含まれるコマンドレットとプロバイダーは、現在のセッションですぐに使用できますが、変更は現在のセッションにのみ影響します。

今後のすべてのセッションにスナップインを追加するには、Windows PowerShell プロファイルに保存します。 また、Export-Console コマンドレットを使用してスナップイン名をコンソール ファイルに保存し、今後のセッションで使用することもできます。 複数のコンソール ファイルを保存して、それぞれに異なるスナップインのセットを含めることもできます。

注 : Windows PowerShell スナップイン (PSSnapins) は、Windows PowerShell 3.0 および Windows PowerShell 2.0 で使用できます。 これらのファイルは、以降のバージョンで変更または使用できなくなる可能性があります。 Windows PowerShell コマンドレットとプロバイダーをパッケージ化するには、モジュールを使用します。 モジュールの作成とスナップインからモジュールへの変換については、「 Windows PowerShell モジュールの作成」を参照してください。

SNAP-INS を見つける

コンピューター上の Windows PowerShell スナップインの一覧を取得するには、次のように入力します。

Get-PSSnapin

各 Windows PowerShell プロバイダーのスナップインを取得するには、次のように入力します。

Get-PSProvider | Format-List name, pssnapin

Windows PowerShell スナップインでコマンドレットの一覧を取得するには、次のように入力します。

Get-Command -Module <snap-in_name>

SNAP-IN のインストール

組み込みのスナップインはシステムに登録され、Windows PowerShell を起動すると既定のセッションに追加されます。 ただし、他のユーザーから作成または取得したスナップインを登録し、そのスナップインをセッションに追加する必要があります。

SNAP-IN の登録

Windows PowerShell スナップインは、.NET Framework 言語で記述され、.dll ファイルにコンパイルされるプログラムです。 スナップインでプロバイダーとコマンドレットを使用するには、まずスナップインを登録 (レジストリに追加) する必要があります。

ほとんどのスナップインには、.dll ファイルを自動的に登録するインストール プログラム (.exe ファイルまたは .msi ファイル) が含まれています。 ただし、スナップインを .dll ファイルとして受け取った場合は、システムに登録できます。 詳細については、MSDN ライブラリの 「コマンドレット、プロバイダー、およびホスト アプリケーションを登録する方法 」を参照してください。

システムに登録されているすべてのスナップインを取得するか、スナップインが登録されていることを確認するには、次のように入力します。

Get-PSSnapin -registered

現在のセッションへの SNAP-IN の追加

登録したスナップインを現在のセッションに追加するには、Add-PSSnapin コマンドレットを使用します。 たとえば、Microsoft SQL Server スナップインをセッションに追加するには、次のように入力します。

Add-PSSnapin sql

コマンドが完了すると、スナップイン内のプロバイダーとコマンドレットをセッションで使用できるようになります。 ただし、保存しない限り、現在のセッションでのみ使用できます。

SNAP-INS の保存

今後の Windows PowerShell セッションでスナップインを使用するには、Windows PowerShell プロファイルに Add-PSSnapin コマンドを追加します。 または、スナップイン名をコンソール ファイルにエクスポートします。

プロファイルに Add-PSSnapin コマンドを追加すると、今後のすべての Windows PowerShell セッションで使用できるようになります。 セッションでスナップインの名前をエクスポートする場合は、スナップインが必要な場合にのみエクスポート ファイルを使用できます。

Add-PSSnapin コマンドを Windows PowerShell プロファイルに追加するには、プロファイルを開き、コマンドを貼り付けるか入力して、プロファイルを保存します。 詳細については、「about_Profiles」を参照してください。

セッションのスナップインをコンソール ファイル (.psc1) に保存するには、Export-Console コマンドレットを使用します。 たとえば、現在のセッション構成のスナップインを現在のディレクトリの NewConsole.psc1 ファイルに保存するには、次のように入力します。

Export-Console NewConsole

詳細については、「Export-Console」を参照してください。

コンソール ファイルを使用して WINDOWS POWERSHELL を開く

スナップインを含むコンソール ファイルを使用するには、Cmd.exe または別の Windows PowerShell セッションでコマンド プロンプトから Windows PowerShell (PowerShell.exe) を起動します。 PsConsoleFile パラメーターを使用して、スナップインを含むコンソール ファイルを指定します。 たとえば、次のコマンドは、NewConsole.psc1 コンソール ファイルを使用して Windows PowerShell を起動します。

PowerShell.exe -psconsolefile NewConsole.psc1

これで、スナップインのプロバイダーとコマンドレットをセッションで使用できるようになりました。

SNAP-IN の削除

現在のセッションから Windows PowerShell スナップインを削除するには、Remove-PSSnapin コマンドレットを使用します。 たとえば、現在のセッションから SQL Server スナップインを削除するには、次のように入力します。

Remove-PSSnapin sql

このコマンドレットは、セッションからスナップインを削除します。 スナップインは引き続き読み込まれますが、サポートされているプロバイダーとコマンドレットは使用できなくなりました。

BUILT-IN コマンド

Windows PowerShell 2.0 および Windows PowerShell 3.0 以降の古いスタイルのホスト プログラムでは、Windows PowerShell と共にインストールされる組み込みコマンドは、すべての Windows PowerShell セッションに自動的に追加されるスナップインにパッケージ化されます。

Windows PowerShell 3.0 以降、新しいスタイルのホスト プログラム (InitialSessionState.CreateDefault2 メソッドを使用してセッションを開始するプログラム) では、組み込みコマンドがモジュールにパッケージ化されています。 例外は Microsoft.PowerShell.Core で、常にスナップインとして表示されます。 コア スナップインは、既定ですべてのセッションに含まれています。 組み込みモジュールは、初回使用時に自動的にロードされます。

注 : リモート セッション (New-PSSession コマンドレットを使用して開始されるセッションを含む) は、組み込みコマンドがスナップインにパッケージ化された古いスタイルのセッションです。

次のスナップイン (またはモジュール) は、Windows PowerShell と共にインストールされます。

  • Microsoft.PowerShell.Core - Windows PowerShell の基本機能を管理するために使用されるプロバイダーとコマンドレットが含まれています。 これには、FileSystem、Registry、Alias、Environment、Function、Variable の各プロバイダーと、Get-Help、Get-Command、Get-History などの基本的なコマンドレットが含まれます。

  • Microsoft.PowerShell.Host - Windows PowerShell ホストで使用されるコマンドレット (Start-Transcript や Stop-Transcript など) が含まれています。

  • Microsoft.PowerShell.Management - Windows ベースの機能の管理に使用される Get-Service や Get-ChildItem などのコマンドレットが含まれています。

  • Microsoft.PowerShell.Security - Get-Acl、Get-AuthenticodeSignature、ConvertTo-SecureString など、Windows PowerShell セキュリティの管理に使用される証明書プロバイダーとコマンドレットが含まれています。

  • Microsoft.PowerShell.Utility - Get-Member、Write-Host、Format-List など、オブジェクトとデータの操作に使用されるコマンドレットが含まれています。

  • Microsoft.WSMan.Management - Windows リモート管理サービスを管理する WSMan プロバイダーとコマンドレット (Connect-WSMan や Enable-WSManCredSSP など) が含まれています。

SNAP-IN イベントのロギング

Windows PowerShell 3.0 以降では、モジュールとスナップインの LogPipelineExecutionDetails プロパティを TRUE に設定することで、Windows PowerShell モジュールとスナップインのコマンドレットの実行イベントを記録できます。 詳細については、「 about_EventLogs」を参照してください。

関連項目

PSSnapinを追加

Get-PSSnapin

remove-PSSnapin する

エクスポートコンソール

Get-コマンド

プロフィールについて

モジュールについて

キーワード

about_Snapins、about_Snap_ins、about_Snapイン