Share via


Import-IseSnippet

現在のセッションに ISE スニペットをインポートします。

構文

Import-IseSnippet
      [-Path] <String>
      [-Recurse]
      [<CommonParameters>]
Import-IseSnippet
      [-Recurse]
      -Module <String>
      [-ListAvailable]
      [<CommonParameters>]

説明

コマンドレットは Import-IseSnippet 、モジュールまたはディレクトリから現在のセッションに再利用可能なテキスト "スニペット" をインポートします。 スニペットは、Windows PowerShell I Standard Edition ですぐに使用できます。 このコマンドレットは、Windows PowerShell Integrated Scripting Environment (I Standard Edition) でのみ機能します。

インポートしたスニペットを表示して使用するには、Windows PowerShell I Standard Edition [編集] メニューから [スニペットの開始] をクリックするか、Ctrl J キー+を押します。

インポートしたスニペットは、現在のセッションでのみ使用できます。 すべての Windows PowerShell I Standard Edition セッションにスニペットをインポートするには、Windows PowerShell プロファイルにコマンドを追加Import-IseSnippetするか、スニペット ファイルをローカル スニペット ディレクトリにコピーします$HOME\Documents\WindowsPowershell\Snippets

スニペットをインポートするには、スニペットを Windows PowerShell I のスニペット XML で適切に書式設定しStandard Editionスニペットを Snippet.ps1xml ファイルに保存する必要があります。 対象となるスニペットを作成するには、コマンドレットを New-IseSnippet 使用します。 New-IseSnippet はディレクトリに <SnippetTitle>.Snippets.ps1xml ファイルを $HOME\Documents\WindowsPowerShell\Snippets 作成します。 スニペットは、Windows PowerShell モジュールの Snippets ディレクトリまたはその他の任意のディレクトリにコピーしたり移動したりできます。

Get-IseSnippetローカル スニペット ディレクトリでユーザーが作成したスニペットを取得するコマンドレットでは、インポートされたスニペットは取得されません。

このコマンドレットは、Windows PowerShell 3.0 で導入されました。

例 1: ディレクトリからスニペットをインポートする

この例では、ディレクトリから現在のセッションに \\Server01\Public\Snippets スニペットをインポートします。 Recurse パラメーターを使用して、Snippets ディレクトリのすべてのサブディレクトリからスニペットを取得します。

Import-IseSnippet -Path \\Server01\Public\Snippets -Recurse

例 2: モジュールからスニペットをインポートする

この例では、SnippetModule モジュールからスニペットをインポートします。 コマンドは、コマンドの実行時に SnippetModule モジュールがユーザーのセッションにインポートされない場合でも、ListAvailable パラメーターを使用してスニペットをインポートします。

Import-IseSnippet -Module SnippetModule -ListAvailable

例 3: モジュールでスニペットを検索する

この例では、PSModulePath 環境変数にインストールされているすべてのモジュールのスニペットを取得します。

($env:PSModulePath).split(";") |
  ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
    ForEach-Object {$_.fullname}

例 4: すべてのモジュール スニペットをインポートする

この例では、インストールされているすべてのモジュールからすべてのスニペットを現在のセッションにインポートします。 通常、このようなコマンドを実行する必要はありません。スニペットを含むモジュールは、モジュールのインポート時にコマンドレットを Import-IseSnippet 使用してインポートするためです。

($env:PSModulePath).split(";") |
  ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
    ForEach-Object {$psise.CurrentPowerShellTab.Snippets.Load($_)}

例 5: すべてのモジュール スニペットをコピーする

この例では、インストールされているすべてのモジュールから現在のユーザーのディレクトリに Snippets スニペット ファイルをコピーします。 現在のセッションのみに影響を与えるインポートされたスニペットとは異なり、コピーされたスニペットはすべての Windows PowerShell ISE のセッションで使用できます。

($env:PSModulePath).split(";") |
  ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
    Copy-Item -Destination $HOME\Documents\WindowsPowerShell\Snippets

パラメーター

-ListAvailable

このコマンドレットは、モジュールが現在のセッションにインポートされていない場合でも、コンピューターにインストールされているモジュールからスニペットを取得することを示します。 このパラメーターを省略し、Module パラメーターで指定されたモジュールが現在のセッションにインポートされていない場合、モジュールからスニペットを取得しようとすると失敗します。

このパラメーターは、Module パラメーターがコマンドで使用されている場合にのみ有効です。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Module

指定したモジュールからスニペットを現在のセッションにインポートします。 ワイルドカード文字はサポートされていません。

このパラメーターは、モジュール パスの Snippets サブディレクトリ内のファイルから Snippet.ps1xml スニペットをインポートします。次に例を示 $HOME\Documents\WindowsPowerShell\Modules\<ModuleName>\Snippetsします。

このパラメーターは、モジュール マニフェストの ScriptsToProcess キーで指定されたスクリプトなど、スタートアップ スクリプトのモジュール作成者が使用するように設計されています。 モジュール内のスニペットはモジュールと共に自動的にインポートされませんが、コマンドを Import-IseSnippet 使用してインポートできます。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Path

このコマンドレットがスニペットをインポートするスニペット ディレクトリへのパスを指定します。

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:True

-Recurse

このコマンドレットが、Path パラメーターの値のすべてのサブディレクトリからスニペットをインポートすることを示します。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

入力

None

このコマンドレットにオブジェクトをパイプすることはできません。

出力

None

このコマンドレットは、出力を返しません。

メモ

  • このコマンドレットを Get-IseSnippet 使用して、インポートされたスニペットを取得することはできません。 Get-IseSnippet は、ディレクトリ内の $HOME\Documents\WindowsPowerShell\Snippets スニペットのみを取得します。

  • Import-IseSnippetは、Microsoft.PowerShell.Host.I Standard Edition の Load 静的メソッドを使用します。I Standard Edition SnippetCollection オブジェクト。 Windows PowerShell I Standard Edition オブジェクト モデルでスニペットの Load メソッドを使用することもできます。$psISE.CurrentPowerShellTab.Snippets.Load()

  • このコマンドレットは New-IseSnippet 、ユーザーが作成した新しいスニペットを署名されていない .ps1xml ファイルに格納します。 そのため、Windows PowerShell では、実行ポリシーが AllSigned または Restricted であるセッションに読み込むことができません。 Restricted または AllSigned セッションでは、署名されていないユーザーが作成したスニペットを作成、取得、インポートできますが、セッションで使用することはできません。

    コマンドレットが返す署名されていないユーザー作成スニペットをImport-IseSnippet使用するには、実行ポリシーを変更してから、Windows PowerShell I Standard Editionを再起動します。

    Windows PowerShell 実行ポリシーの詳細については、「about_Execution_Policies」を参照してください