Import-IseSnippet
ISE-fragmenten importeren in de huidige sessie
Syntax
Import-IseSnippet
[-Path] <String>
[-Recurse]
[<CommonParameters>]
Import-IseSnippet
[-Recurse]
-Module <String>
[-ListAvailable]
[<CommonParameters>]
Description
Met Import-IseSnippet de cmdlet importeert u herbruikbare tekst 'fragmenten' uit een module of een map in de huidige sessie. De codefragmenten 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 $home\Documents\WindowsPowershell\Snippetsmet lokale fragmenten.
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 fragment.ps1xml-bestanden. Gebruik de New-IseSnippet cmdlet om in aanmerking komende fragmenten te maken. New-IseSnippet maakt een <SnippetTitle>.Snippets.ps1xml bestand in de $home\Documents\WindowsPowerShell\Snippets map. 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, die door de gebruiker gemaakte fragmenten in de map met lokale fragmenten ophaalt, ontvangt geen geïmporteerde fragmenten.
Deze cmdlet is geïntroduceerd in Windows PowerShell 3.0.
Voorbeelden
Voorbeeld 1: Fragmenten uit een map importeren
In dit voorbeeld worden de fragmenten uit de \\Server01\Public\Snippets map geïmporteerd in de huidige sessie. De parameter Recurse wordt 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 module SnippetModule 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 omgevingsvariabele PSModulePath .
($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 zoals 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 fragmentbestanden 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
Geeft aan dat met deze cmdlet fragmenten worden opgehaald 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 moduleparameter, niet wordt geïmporteerd in de huidige sessie, mislukt de poging om de fragmenten uit de module op te halen.
Deze parameter is alleen geldig wanneer de moduleparameter wordt gebruikt in de opdracht.
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Importeert 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.
| Type: | String |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Hiermee geeft u het pad naar de map fragmenten waarin deze cmdlet fragmenten importeert.
| Type: | String |
| Position: | 1 |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | True |
Geeft aan dat met deze cmdlet fragmenten worden geïmporteerd uit alle submappen van de waarde van de parameter Path .
| Type: | SwitchParameter |
| Position: | Named |
| Default value: | None |
| Accept pipeline input: | False |
| Accept wildcard characters: | False |
Invoerwaarden
None
Met deze cmdlet wordt geen invoer uit de pijplijn opgehaald.
Uitvoerwaarden
None
Met deze cmdlet wordt geen uitvoer gegenereerd.
Notities
U kunt de
Get-IseSnippetcmdlet niet gebruiken om geïmporteerde fragmenten op te halen.Get-IseSnippethaalt alleen fragmenten op in de$home\Documents\WindowsPowerShell\Snippetsmap.Import-IseSnippetmaakt gebruik van de statische methode Load van Microsoft.PowerShell.Host.ISE.ISESnippetCollection-objecten . U kunt ook de loadmethode van codefragmenten gebruiken in het Windows PowerShell ISE-objectmodel:$psISE.CurrentPowerShellTab.Snippets.Load()Met de
New-IseSnippetcmdlet worden nieuwe door de gebruiker gemaakte fragmenten opgeslagen in niet-ondertekende .ps1xml-bestanden. Als zodanig kan Windows PowerShell ze niet laden in een sessie waarin het uitvoeringsbeleid AllSigned of Restricted is. In een beperkte of allsigned-sessie kunt u niet-ondertekende door de gebruiker gemaakte fragmenten maken, ophalen en importeren, maar u kunt ze niet gebruiken in de sessie.Als u niet-ondertekende door de gebruiker gemaakte fragmenten wilt gebruiken die door de
Import-IseSnippetcmdlet worden geretourneerd, wijzigt u het uitvoeringsbeleid en start u Windows PowerShell ISE opnieuw.Zie about_Execution_Policies voor meer informatie over Windows PowerShell uitvoeringsbeleid.
Verwante koppelingen
Feedback
Feedback verzenden en weergeven voor