Import-IseSnippet
Importiert ISE-Codeausschnitte in die aktuelle Sitzung.
Syntax
Import-IseSnippet
[-Path] <String>
[-Recurse]
[<CommonParameters>]
Import-IseSnippet
[-Recurse]
-Module <String>
[-ListAvailable]
[<CommonParameters>]
Beschreibung
Das Import-IseSnippet
Cmdlet importiert wiederverwendbare Textausschnitte aus einem Modul oder einem Verzeichnis in die aktuelle Sitzung. Die Codeausschnitte stehen sofort zur Verwendung in Windows PowerShell ISE zur Verfügung. Dieses Cmdlet funktioniert nur in windows PowerShell Integrated Scripting Environment (ISE).
Um die importierten Codeausschnitte anzuzeigen und zu verwenden, klicken Sie im Windows PowerShell ISE-Bearbeitungsmenü auf "Codeausschnitte starten", oder drücken Sie STRG+J.
Importierte Codeausschnitte sind nur in der aktuellen Sitzung verfügbar. Um die Codeausschnitte in alle Windows PowerShell ISE-Sitzungen zu importieren, fügen Sie Ihrem Windows PowerShell-Profil einen Import-IseSnippet
Befehl hinzu, oder kopieren Sie die Codeausschnittdateien in Ihr lokales Codeausschnittverzeichnis $HOME\Documents\WindowsPowershell\Snippets
.
Zum Importieren von Codeausschnitten müssen sie im Codeausschnitt-XML für Windows PowerShell ISE-Codeausschnitte ordnungsgemäß formatiert und in Codeausschnitten.ps1xml-Dateien gespeichert werden. Verwenden Sie das New-IseSnippet
Cmdlet, um berechtigte Codeausschnitte zu erstellen. New-IseSnippet
erstellt eine <SnippetTitle>.Snippets.ps1xml
Datei im $HOME\Documents\WindowsPowerShell\Snippets
Verzeichnis. Sie können die Codeausschnitte in das Verzeichnis „Snippets“ eines Windows PowerShell-Moduls oder in ein beliebiges anderen Verzeichnis verschieben oder kopieren.
Das Get-IseSnippet
Cmdlet, das vom Benutzer erstellte Codeausschnitte im lokalen Codeausschnittverzeichnis abruft, ruft keine importierten Codeausschnitte ab.
Dieses Cmdlet wurde in Windows PowerShell 3.0 eingeführt.
Beispiele
Beispiel 1: Importieren von Codeausschnitten aus einem Verzeichnis
In diesem Beispiel werden die Codeausschnitte aus dem \\Server01\Public\Snippets
Verzeichnis in die aktuelle Sitzung importiert. Er verwendet den Parameter Recurse , um Codeausschnitte aus allen Unterverzeichnissen des Codeausschnittverzeichnisses abzurufen.
Import-IseSnippet -Path \\Server01\Public\Snippets -Recurse
Beispiel 2: Importieren von Codeausschnitten aus einem Modul
In diesem Beispiel werden die Codeausschnitte aus dem SnippetModule-Modul importiert. Der Befehl verwendet den Parameter ListAvailable , um die Codeausschnitte zu importieren, auch wenn das SnippetModule-Modul nicht in die Sitzung des Benutzers importiert wird, wenn der Befehl ausgeführt wird.
Import-IseSnippet -Module SnippetModule -ListAvailable
Beispiel 3: Suchen von Codeausschnitten in Modulen
In diesem Beispiel werden Codeausschnitte in allen installierten Modulen in der PSModulePath-Umgebungsvariablen angezeigt.
($env:PSModulePath).split(";") |
ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
ForEach-Object {$_.fullname}
Beispiel 4: Importieren aller Modulausschnitte
In diesem Beispiel werden alle Codeausschnitte aus allen installierten Modulen in die aktuelle Sitzung importiert. In der Regel müssen Sie keinen Befehl wie diesen ausführen, da Module mit Codeausschnitten das Import-IseSnippet
Cmdlet zum Importieren des Moduls verwenden.
($env:PSModulePath).split(";") |
ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
ForEach-Object {$psise.CurrentPowerShellTab.Snippets.Load($_)}
Beispiel 5: Kopieren aller Modulausschnitte
In diesem Beispiel werden die Codeausschnittdateien aus allen installierten Modulen in das Snippets
Verzeichnis des aktuellen Benutzers kopiert. Im Gegensatz zu importierten Codeausschnitten, die nur die aktuelle Sitzung betreffen, sind die kopierten Codeausschnitte in jeder Windows PowerShell ISE-Sitzung verfügbar.
($env:PSModulePath).split(";") |
ForEach-Object {dir $_\*\Snippets\*.Snippets.ps1xml -ErrorAction SilentlyContinue} |
Copy-Item -Destination $HOME\Documents\WindowsPowerShell\Snippets
Parameter
-ListAvailable
Gibt an, dass dieses Cmdlet Codeausschnitte aus Modulen abruft, die auf dem Computer installiert sind, auch wenn die Module nicht in die aktuelle Sitzung importiert werden. Wenn dieser Parameter nicht angegeben wird und das durch den Parameter "Module" angegebene Modul nicht in die aktuelle Sitzung importiert wird, schlägt der Versuch fehl, die Codeausschnitte aus dem Modul abzurufen.
Dieser Parameter ist nur gültig, wenn der Parameter "Module" im Befehl verwendet wird.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Module
Importiert Codeausschnitte aus dem angegebenen Modul in die aktuelle Sitzung. Platzhalterzeichen werden nicht unterstützt.
Dieser Parameter importiert Codeausschnitte aus Snippet.ps1xml
Dateien im Codeausschnitt-Unterverzeichnis im Modulpfad, z $HOME\Documents\WindowsPowerShell\Modules\<ModuleName>\Snippets
. B. .
Dieser Parameter wurde entwickelt, um von Modulautoren in einem Startskript verwendet zu werden, z. B. ein skript, das im SkriptToProcess-Schlüssel eines Modulmanifests angegeben ist. Codeausschnitte in einem Modul werden nicht automatisch mit dem Modul importiert, aber Sie können einen Import-IseSnippet
Befehl verwenden, um sie zu importieren.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Gibt den Pfad zum Codeausschnittverzeichnis an, in dem dieses Cmdlet Codeausschnitte importiert.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Recurse
Gibt an, dass dieses Cmdlet Codeausschnitte aus allen Unterverzeichnissen des Werts des Path-Parameters importiert.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Eingaben
None
Sie können keine Objekte an dieses Cmdlet weiterleiten.
Ausgaben
None
Dieses Cmdlet gibt keine Ausgabe zurück.
Hinweise
Sie können das
Get-IseSnippet
Cmdlet nicht verwenden, um importierte Codeausschnitte abzurufen.Get-IseSnippet
ruft nur Codeausschnitte im$HOME\Documents\WindowsPowerShell\Snippets
Verzeichnis ab.Import-IseSnippet
verwendet die Load static-Methode von Microsoft.PowerShell.Host.ISE.ISESnippetCollection -Objekten. Sie können auch die Load-Methode von Codeausschnitten im Windows PowerShell ISE-Objektmodell verwenden:$psISE.CurrentPowerShellTab.Snippets.Load()
Das
New-IseSnippet
Cmdlet speichert neue vom Benutzer erstellte Codeausschnitte in nicht signierten PS1XML-Dateien. Daher kann Windows PowerShell sie nicht in eine Sitzung laden, in der die Ausführungsrichtlinie "AllSigned" oder "Restricted" lautet. In einer Eingeschränkten oder AllSigned-Sitzung können Sie nicht signierte, vom Benutzer erstellte Codeausschnitte erstellen, abrufen und importieren, sie können jedoch nicht in der Sitzung verwenden.Wenn Sie nicht signierte vom Benutzer erstellte Codeausschnitte verwenden möchten, die das
Import-IseSnippet
Cmdlet zurückgibt, ändern Sie die Ausführungsrichtlinie, und starten Sie dann Windows PowerShell ISE neu.Weitere Informationen zu Windows PowerShell-Ausführungsrichtlinien finden Sie unter about_Execution_Policies.
Ähnliche Themen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für