PowerShell Ausgabe in Zwischenablage speichern

Wir verwenden fast jeden Tag die Kopieren/Einfügen-Funktion in vielen der Anwendungen, die wir nutzen. Seit Windows 10 die neue Zwischenablage Funktion eingeführt hat, benutzt man eigentlich noch viel öfter die Tastenkombination Strg+C und Strg+V.

Aber wie gehst du mit derselben Sache in einer PowerShell-Umgebung um, wie das direkte Senden eines Ergebnisses in die Zwischenablage? Gerade für Administratoren, welche häufig viele Scripte erstellen, ist das Kopieren eine wichtige Funktion.

Obwohl die Tastenkombination´immer noch funktioniert, gibt es einen viel bessere Methode. Die Windows PowerShell bietet eigens dafür zwei Cmdlets an. Einmal das Cmdlet Set-Clipboard und zum anderen das Cmdlet Get-Clipboard.

PowerShell Ausgabe in Zwischenablage speichern – Die Cmdlets

Set-Clipboard

Das Cmdlet Set-Clipboard ist für PowerShell Clipboard zuständig. Damit kannst du also PowerShell Ausgaben in die Zwischenablage speichern.

Um alle möglichen Parameter und auch Beispiele zu erhalten, eignet sich immer die Windows PowerShell Hilfe. Für ein einzelnes Cmdlet kannst die Hilfe dabei folgendermaßen aufrufen:

Get-Help Set-Clipboard -Detailed

Diese Variante funktioniert im Übrigen bei jedem Cmdlet. Solltest du jedoch keine Hilfedateien erhalten, so liegt das meist daran, dass du die Hilfe Dateien erst herunterladen musst. Das Cmdlet Update-Help in der PowerShell hilft hier dann weiter.

Das folgende Beispiel kopiert den Text in die PowerShell Zwischenablage.

Set-Clipboard -value "Scripting mit der PowerShell"

Eine hervorragende Option ist auch das Verwenden der Pipe in Kombination mit Set-Clipboard. Die Pipe leitet das Ergebnis weiter in die Zwischenablage.

Das Beispiel zeigt, wie aus der Systemvariable der Computername ausgelesen und direkt in die Zwischenablage gespeichert wird.

PS> $env:ComputerName | Set-Clipboard

Da Set-Clipboard einen Append-Schalter hat, kannst du weiteren Inhalt zur aktuellen Zwischenablage hinzufügen, ohne die vorherigen zu entfernen. Dabei muss nur die Option angegeben werden.

PS> $env:SystemRoot | Set-Clipboard -Append

Eine weitere Funktion, welche das Cmdlet Set-Clipboard anbietet, ist das direkte Speichern eines Pfades in die Zwischenablage.

PS> Set-Clipboard -Path "h:\scripts"

Get-Clipboard

Nachdem man viele Inhalte in die Zwischenablage gespeichert hat, ist es jetzt auch nötig, Inhalte aus der Zwischenablage wieder auszulesen. Genau dafür gibt es das Cmdlet Get-Clipboard.

Da verschiedene Arten von Inhalten in die Zwischenablage kopiert werden können, musst du unterschiedliche Formatparameter verwenden, um sie zu unterscheiden. Auch hier ist es zunächst sinnvoll, sich die einzelnen möglichen Parameter des Cmdlets anzusehen.

Get-help Get-Clipboard -Detailed

Die einzelnen Formatparameter sind dabei folgende:

ParameterBeschreibung
TextGibt alles Daten aus, welche als Text gespeichert wurden.
FileDropListGibt alle Dateien aus der Zwischenablage aus
ImageZeigt alle Bilder aus der Zwischenablage
AudioZeigt alle Audiodateien aus der Zwischenablage.

Die Anwendung erfolgt im Prinzip wieder mit der Übergabe des „Format“ Parameters.

PS> Get-Clipboard -format FileDropList

Wenn man die Texte ausgeben möchte, verwendet man den Formatparameter „Text“.

PS> Get-Clipboard -format Text
PowerShell Clipboard

Kein Zwischenablegeverlauf sichtbar?

Wenn du unter Windows den Zwischenablageverlauf nicht sehen kannst, könnte es daran liegen, dass dieser nicht aktiviert ist.

Für dessen Aktivierung musst du unter Windows bei den Einstellungen zu System wechseln und dort den Zwischenablageverlauf aktivieren.

PowerShell Ausgabe in Zwischenablage speichern - Zwischenablageverlauf aktivieren

Wie leerst du die Zwischenablage?

Die Zwischenablage speichert jetzt alle deine hinzugefügten Inhalte. Aber wie lässt sich diese wieder leeren? Über die Windows PowerShell funktioniert das leider nicht direkt.

Windows Zwischenablage leeren
Windows Zwischenablage leeren

Du kannst aber zum einen, die grafische Oberfläche verwenden, oder noch einfacher funktioniert dies, wenn du die Eingabeaufforderung verwendest.

Eine Eingabeaufforderung lässt sich ein besœten über das neue Windows Terminal öffnen. Dort hast du die Option neben einem PowerShell Terminal auch direkt eine cmd zu öffnen. Für die Administration ist das neue Windows Terminal ein hervorragendes Werkzeug.

In der cmd wird jetzt der folgende Befehl benötigt. Damit löschst du jetzt den kompletten Inhalt deiner Zwischenablage.

cmd /c "echo off | clip"

Solltest du die Zwischenablage unter Windows nicht verwenden wollen, so lässt sich diese auch über die Windows Registrierung komplett deaktivieren.

Fazit und Ausblick

Um jetzt eine PowerShell Ausgabe in Zwischenablage speichern zu können, solltest du den Befehl für Set-Clipboard sowie Get-Clipboard im Hinterkopf behalten.

Im Bereich der Administration ist es oft nötigt, Konfigurationen zu kopieren. Wenn du schon ein Terminal geöffnet hast, geht das mit diesen Cmdlets wesentlich schneller und einfacher.

Dieser Artikel beinhaltet Partner-Links. Durch einen Klick darauf ge­lan­gt ihr direkt zum Anbieter. Solltet ihr euch dort für einen Kauf entscheiden, erhält IT-Learner eine kleine Provision. Der Preis ändert sich für euch nicht. Danke für eure Unterstützung! Letzte Aktualisierung am 31.05.2024

b90da239716645a489081d15ff2748e2
Der Blogbetreiber und Autor: Markus Elsberger

Über den Autor

Mein Name ist Markus Elsberger und ich beschäftige mich mit der Administration von Windows und Linux Systemen sowie mit diversen Themen bzgl. Netzwerktechnik. In meiner Lehrtätigkeit erstelle ich verschiedene Szenarien und teste auch verschiedene Konfigurationen, welche ich in diesem Blog festhalten möchte.


Kostenlose Befehlsreferenzen und E-Books
(Netzwerkanalyse, Benutzerverwaltung, Festplattenkonfiguration, u. v. m.)


Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

×