Get-IseSnippet

Hämtar kodfragment som användaren skapade.

Syntax

Get-IseSnippet []

Description

Cmdleten Get-IseSnippet hämtar PS1XML-filerna som innehåller återanvändbara textfragment som användaren skapade. Det fungerar endast i Windows PowerShell Integrated Scripting Environment (ISE).

När du använder cmdleten New-IseSnippet för att skapa ett kodfragment New-IseSnippet skapar du en <SnippetTitle>.Snippets.ps1xml fil i $HOME\Documents\WindowsPowerShell\Snippets katalogen. Get-IseSnippet hämtar kodfragmentfilerna i katalogen Kodfragment.

Den här cmdleten hämtar inte inbyggda kodfragment eller kodfragment som importeras från moduler via cmdleten Import-IseSnippet .

Den här cmdleten introducerades i Windows PowerShell 3.0.

Exempel

Exempel 1: Hämta alla användardefinierade kodfragment

Det här exemplet hämtar alla användardefinierade kodfragment i katalogen Kodfragment.

Get-IseSnippet

Exempel 2: Kopiera alla användardefinierade kodfragment från fjärrdatorer till en delad katalog

I det här exemplet kopieras alla användarskapade kodfragment från en grupp fjärrdatorer till en delad kodfragmentkatalog.

Invoke-Command -Computer (Get-Content Servers.txt) {Get-IseSnippet | Copy-Item -Destination \\Server01\Share01\Snippets}

Invoke-Command körs Get-IseSnippet på datorerna Servers.txt i filen. En pipelineoperator (|) skickar kodfragmentfilerna till cmdleten Copy-Item , som kopierar dem till katalogen som anges av målparametern .

Exempel 3: Visa rubrik och text för varje kodfragment på en lokal dator

I det här exemplet används Get-IseSnippet cmdletarna och Select-Xml för att visa rubriken och texten för varje kodfragment på den lokala datorn.

#Parse-Snippet Function
function Parse-Snippet {
  $SnippetFiles = Get-IseSnippet
  $SnippetNamespace = @{x="http://schemas.microsoft.com/PowerShell/Snippets"}
  foreach ($SnippetFile in $SnippetFiles) {
     Write-Host ""
     $Title = Select-Xml -Path $SnippetFile.FullName -Namespace $SnippetNamespace -XPath "//x:Title" |
       ForEach-Object {$_.Node.InnerXML}
     $Text = Select-Xml -Path $SnippetFile.FullName -Namespace $SnippetNamespace -XPath "//x:Script" |
       ForEach-Object {$_.Node.InnerText}
     Write-Host "Title: $Title"
     Write-Host "Text: $Text"
   }
}

Title: Mandatory
Text:
Param
(
  [parameter(Mandatory=True)]
  [String[]]
  $<ParameterName>
)

Title: Copyright
Text:  (c) Fabrikam, Inc. 2012

Exempel 4: Visa rubriken och beskrivningen av alla kodfragment i sessionen

I det här exemplet visas rubriken och beskrivningen av alla kodfragment i sessionen, inklusive inbyggda kodfragment, användardefinierade kodfragment och importerade kodfragment.

$PSISE.CurrentPowerShellTab.Snippets | Format-Table DisplayTitle, Description

Variabeln $PSISE representerar Windows PowerShell ISE-värdprogrammet. Egenskapen CurrentPowerShellTab för variabeln $PSISE representerar den aktuella sessionen. Egenskapen Kodfragment representerar kodfragment i den aktuella sessionen.

Kommandot $PSISE.CurrentPowerShellTab.Snippets returnerar ett Microsoft.PowerShell.Host.ISE.ISESnippet-objekt som representerar ett kodfragment, till skillnad från cmdleten Get-IseSnippet . Get-IseSnippet returnerar ett filobjekt (System.Io.FileInfo) som representerar en kodfragmentfil.

Cmdleten Format-Tablevisar egenskaperna DisplayTitle och Description för kodfragmenten i en tabell.

Indata

None

Du kan inte skicka objekt till den här cmdleten.

Utdata

FileInfo

Den här cmdleten returnerar ett filobjekt som representerar kodfragmentfilen.

Kommentarer

  • Cmdleten New-IseSnippet lagrar nya användarskapade kodfragment i osignerade .ps1xml-filer. Därför kan Inte Windows PowerShell lägga till dem i en session där körningsprincipen är AllSigned eller Restricted. I en begränsad session eller AllSigned-session kan du skapa, hämta och importera osignerade användarskapade kodfragment, men du kan inte använda dem i sessionen.

    Om du vill använda osignerade användarskapade kodfragment som cmdleten Get-IseSnippet returnerar ändrar du körningsprincipen och startar sedan om Windows PowerShell ISE.

    Mer information om Körningsprinciper för Windows PowerShell finns i about_Execution_Policies.