2

PowerShell: Zwischenablage kopieren, anzeigen, leeren

Die Zwischenablage ist ein durchaus wichtiges Feature unter Windows Betriebssystemen. Man nutzt sie oft unbewusst um mit [STRG] + [C] Dateien in die Zwischenablage zu kopieren. Doch mit PowerShell können ganz einfach Daten hinein kopiert werden, das Clipboard anzeigen lassen und sogar zu löschen. Wie man das mit PowerShell realisieren kann, zeigen wir in diesem Beitrag.

Die Windows Zwischenablage mit PowerShell

Die Windows Zwischenablage kann auch mit PowerShell bedient werden. Hierfür nutzt man die Cmdlets Get-Clipboard um den aktuellen Inhalt anzeigen zu lassen, oder Set-Clipboard um Daten in die Zwischenablage kopieren zu lassen. Außerdem ist das Leeren des Clipboards möglich.

In die Zwischenablage Kopieren mit Set-Clipboard

Das Hinzufügen von Daten in die Zwischenablage ist mit dem PowerShell Befehl Set-Clipboard möglich. Das einfachste Beispiel ist das Hinzufügen von Text:

Set-Clipboard "Das ist mein Text."
#Synonym
Set-Clipboard -Value "Das ist mein Text."
PowerShell Set-Clipborad zur Zwischenablage hinzufügen kopieren

Beide PS Befehle erzielen das gleiche Ergebnis. Der Text wird in die Zwischenablage kopiert und alle vorherigen Inhalte gelöscht. Möchte man nun einen weiteren Inhalt zum Clipboard hinzufügen, ohne dass der bestehende Inhalt gelöscht wird, so nutzt man den Parameter -Append zum Anhängen.

Set-Clipboard "Das ist mein zweiter Text." -Append
Set-Clipborad -Append Anhängen ohne Inhalt zu löschen

Doch nicht nur Texte mit dem Datentyp String können in die Windows Zwischenablage kopiert werden, sondern auch Dateien und Listen von Pfade. Anstatt eine oder mehrere Dateien mit einem Rechtsklick zu kopieren, kann man das auch mit PowerShell erledigen:

Set-Clipboard -Path "C:\Users\huberj\Desktop\*.txt"

In diesem Beispiel werden alle Dateien auf meinem Desktop mit der Datei-Endung “.txt” in die Windows Zwischenablage kopiert. Hierfür wird der Parameter -Path verwendet um anzugeben, dass es sich nicht um einen String handelt. Diese Dateien können dann an einer beliebigen Stelle eingefügt werden.

Inhalte auslesen und anzeigen mit Get-Clipboard

Das generelle Anzeigen und Auslesen der Windows Zwischenablage mit PowerShell funktioniert mit dem Befehl Get-Clipboard. Wie im Screenshot oben zu sehen ist, wird der Text, der mit Set-Clipboard gesetzt wurde, dann angezeigt.

Get-Clipboard

Das sieht noch nicht spektakulär aus. Allerdings kann man auch die Zwischenablage nach einem bestimmten Inhalt durchsuchen. Beispielsweise kann man mit Select-String nach einem bestimmten Wort durchsuchen.

Get-Clipborad | Select-String "zweiter"
PowerShell Get-Clipboard Zwischenablage anzeigen

Hierbei wird nur der Inhalt ausgelesen, welcher das bestimmte Wort beinhaltet. Somit können auch nur bestimmte Teile des Clipboards angezeigt werden.

Inhalt leeren, beziehungsweise löschen

Für das Leeren der Zwischenablage mit PowerShell gibt es keinen vordefinierten Befehl. Allerdings kann man sich mit verschiedenen Methoden Abhilfe verschaffen. Dazu stehen die Befehle oben zur Verfügung, oder man greift auf andere Windows Mittel zurück, welche sich trotzdem in PowerShell ausführen lassen.

Zum einen kann man der Windows Zwischenablage mit Set-Clipboard einen leeren Wert zuweisen. Hierfür wird die Variable $NULL verwendet.

Set-Clipboard $null

Aber nicht nur Powershell Werkzeuge können zum Leeren verwendet werden, sondern auch Methoden mit .NET. Hierfür muss allerdings erste der AssemblyName System.Windows.Forms hinzugefügt werden. Hier gibt es dann eine fertige Methode um die Zwischenablage löschen zu lassen.

Add-Type -AssemblyName System.Windows.Forms
[System.Windows.Forms.Clipboard]::Clear()

Doch auch Windows hat in den Bordmitteln die clip.exe, welche die Aufgaben mit der Zwischenablage übernimmt. Diese ausführbare EXE Datei geben wir ebenfalls den Wert $NULL zum Verarbeiten, welcher dann geschrieben wird. Somit ist das Clipboard geleert und keine Inhalte mehr vorhanden.

$null | clip.exe

Natürlich wird hier das “Pipe” benötigt, wie man es aus PowerShell auch gewöhnt ist.

Johannes Huber
 

In seiner Freizeit macht Johannes nichts lieber, als für ITnator Beiträge zu schreiben. Input bekommt er hierfür von Problemen in der IT Administration von Servern, Clients und vielen weiteren IT Komponenten.

Click Here to Leave a Comment Below 2 comments