Delen via


Import-IseSnippet

ISE-fragmenten importeren in de huidige sessie

Syntaxis

FromFolder (Standaard)

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

FromModule

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

Description

Met de Import-IseSnippet cmdlet importeert u herbruikbare tekstfragmenten uit een module of map in de huidige sessie. De fragmenten zijn onmiddellijk beschikbaar voor gebruik in Windows PowerShell ISE. Deze cmdlet werkt alleen in Windows PowerShell Integrated Scripting Environment (ISE).

Als u de geïmporteerde fragmenten wilt weergeven en gebruiken, klikt u in het menu Windows PowerShell ISE Bewerken op Fragmenten starten of drukt u op Ctrl+J.

Geïmporteerde fragmenten zijn alleen beschikbaar in de huidige sessie. Als u de fragmenten wilt importeren in alle Windows PowerShell ISE-sessies, voegt u een Import-IseSnippet opdracht toe aan uw Windows PowerShell-profiel of kopieert u de fragmentbestanden naar de map met lokale fragmenten $HOME\Documents\WindowsPowerShell\Snippets.

Als u fragmenten wilt importeren, moeten ze correct zijn opgemaakt in de XML van het fragment voor Windows PowerShell ISE-fragmenten en worden opgeslagen in snippet.ps1xml-bestanden. Gebruik de cmdlet New-IseSnippet om in aanmerking komende fragmenten te maken. New-IseSnippet maakt een <SnippetTitle>.Snippets.ps1xml bestand in de map $HOME\Documents\WindowsPowerShell\Snippets. U kunt de fragmenten verplaatsen of kopiëren naar de map Fragmenten van een Windows PowerShell-module of naar een andere map.

De Get-IseSnippet-cmdlet, waarmee door de gebruiker gemaakte fragmenten worden opgeslagen in de map met lokale fragmenten, worden geen geïmporteerde fragmenten weergegeven.

Deze cmdlet is geïntroduceerd in Windows PowerShell 3.0.

Voorbeelden

Voorbeeld 1: Fragmenten importeren uit een map

In dit voorbeeld worden de fragmenten uit de \\Server01\Public\Snippets map geïmporteerd in de huidige sessie. Hierbij wordt de parameter Recurse gebruikt om fragmenten op te halen uit alle submappen van de map Fragmenten.

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

Voorbeeld 2: Fragmenten uit een module importeren

In dit voorbeeld worden de fragmenten geïmporteerd uit de module SnippetModule. De opdracht gebruikt de parameter ListAvailable om de fragmenten te importeren, zelfs als de SnippetModule module niet wordt geïmporteerd in de sessie van de gebruiker wanneer de opdracht wordt uitgevoerd.

Import-IseSnippet -Module SnippetModule -ListAvailable

Voorbeeld 3: Fragmenten zoeken in modules

In dit voorbeeld worden fragmenten opgehaald in alle geïnstalleerde modules in de PSModulePath omgevingsvariabele.

($Env:PSModulePath).Split(";") |
  ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
    ForEach-Object {$_.FullName}

Voorbeeld 4: Alle modulefragmenten importeren

In dit voorbeeld worden alle fragmenten uit alle geïnstalleerde modules geïmporteerd in de huidige sessie. Normaal gesproken hoeft u geen opdracht als deze uit te voeren, omdat modules met fragmenten de Import-IseSnippet cmdlet gebruiken om ze voor u te importeren wanneer de module wordt geïmporteerd.

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

Voorbeeld 5: Alle modulefragmenten kopiëren

In dit voorbeeld worden de codefragmentbestanden van alle geïnstalleerde modules gekopieerd naar de Snippets map van de huidige gebruiker. In tegenstelling tot geïmporteerde fragmenten, die alleen van invloed zijn op de huidige sessie, zijn gekopieerde fragmenten beschikbaar in elke Windows PowerShell ISE-sessie.

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

Parameters

-ListAvailable

Geeft aan dat deze cmdlet fragmenten ophaalt uit modules die op de computer zijn geïnstalleerd, zelfs als de modules niet in de huidige sessie worden geïmporteerd. Als deze parameter wordt weggelaten en de module die is opgegeven door de parameter Module niet wordt geïmporteerd in de huidige sessie, mislukt de poging om de fragmenten van de module op te halen.

Deze parameter is alleen geldig wanneer de parameter Module wordt gebruikt in de opdracht.

Parametereigenschappen

Type:SwitchParameter
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

FromModule
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Module

Hiermee importeert u fragmenten uit de opgegeven module in de huidige sessie. Jokertekens worden niet ondersteund.

Met deze parameter importeert u fragmenten uit Snippet.ps1xml bestanden in de submap Fragmenten in het modulepad, zoals $HOME\Documents\WindowsPowerShell\Modules\<ModuleName>\Snippets.

Deze parameter is ontworpen voor gebruik door moduleauteurs in een opstartscript, zoals een script dat is opgegeven in de ScriptsToProcess sleutel van een modulemanifest. Fragmenten in een module worden niet automatisch geïmporteerd met de module, maar u kunt een Import-IseSnippet opdracht gebruiken om ze te importeren.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

FromModule
Position:Named
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Path

Hiermee geeft u het pad naar de map met fragmenten waarin deze cmdlet fragmenten importeert.

Parametereigenschappen

Type:String
Default value:None
Ondersteunt jokertekens:True
DontShow:False

Parametersets

FromFolder
Position:1
Verplicht:True
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

-Recurse

Geeft aan dat met deze cmdlet fragmenten worden geïmporteerd uit alle submappen van de waarde van de parameter Path.

Parametereigenschappen

Type:SwitchParameter
Default value:None
Ondersteunt jokertekens:False
DontShow:False

Parametersets

(All)
Position:Named
Verplicht:False
Waarde uit pijplijn:False
Waarde uit pijplijn op eigenschapsnaam:False
Waarde van resterende argumenten:False

CommonParameters

Deze cmdlet ondersteunt de algemene parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction en -WarningVariable. Zie about_CommonParametersvoor meer informatie.

Invoerwaarden

None

U kunt geen objecten doorsluisen naar deze cmdlet.

Uitvoerwaarden

None

Deze cmdlet retourneert geen uitvoer.

Notities

  • U kunt de Get-IseSnippet-cmdlet niet gebruiken om geïmporteerde fragmenten op te halen. Get-IseSnippet krijgt alleen fragmenten in de map $HOME\Documents\WindowsPowerShell\Snippets.

  • Import-IseSnippet maakt gebruik van de statische methode Load van Microsoft.PowerShell.Host.ISE.ISESnippetCollection-objecten. U kunt ook de methode Laden codefragmenten in het Windows PowerShell ISE-objectmodel gebruiken: $psISE.CurrentPowerShellTab.Snippets.Load()

  • Met de cmdlet New-IseSnippet worden nieuwe door de gebruiker gemaakte fragmenten opgeslagen in niet-ondertekende .ps1xml bestanden. Als zodanig kan Windows PowerShell deze niet laden in een sessie waarin het uitvoeringsbeleid is AllSigned of Restricted. In een beperkte of sessie AllSigned kunt u niet-ondertekende door de gebruiker gemaakte fragmenten maken, ophalen en importeren, maar u kunt deze niet gebruiken in de sessie.

    Als u niet-ondertekende door de gebruiker gemaakte fragmenten wilt gebruiken die door de Import-IseSnippet cmdlet worden geretourneerd, wijzigt u het uitvoeringsbeleid en start u Windows PowerShell ISE opnieuw.

    Zie about_Execution_Policiesvoor meer informatie over het windows PowerShell-uitvoeringsbeleid.