Schlagwort-Archive: PowerShell

Zwischenablage in PowerShell nutzen

Mit dem PowerShell cmdlet für die Zwischenablage werden erweiterte Anwendungen erlaubt, aus der PowerShell kann nun nicht nur Inhalt in die Zwischenablage Clipboard kopiert werden, es ist auch das hinzufügen von Inhalt von bereits in der Zwischenablage vorhandenen Inhalt möglich.powershell

Durch das PowerShell Command Set-Clipboard wird ein Text in die Zwischenablage kopiert.

Der eben kopierte Text kann mit Get-Clipboard abgerufen werden.

Mit dem Parameter -Append wird eine Textzeile zur vorhandenen hinzugefügt.

Diese mit Get-Clipboard wieder abgefragt wird.

Folgende Zeile löscht den Inhalt in der Zwischenablage wieder.

Und es geht noch mehr, möchte man Dateien und Ordner die kopiert werden sollen aus der Zwischenablage abrufen, gibt folgendes Command die Ausgabe.

Ebenfalls nützlich ist es, den Text Inhalt von Dateien, direkt ohne die Datei zu öffnen in die Zwischenablage zu kopieren, beispielsweise Scripts oder Source Code.

Get-Content lässt den Inhalt von test.bat in die Zwischenablage kopieren.

Compare-Object vergleicht den Inhalt und kopiert diesen ins Clipboard.

Der default von Compare-Object ist not case sensitive, mit dem Parameter -CaseSensitive wird gross/klein Schreibung unterschieden.

Hilfe und Beispiele zur Anwendung gibt es mit Get-Help.

 

Text in Hex Konverter mit PowerShell

ASCII Text in Hexadezimale Zeichen Konverter gibt es als Online Tool im Internet viele. Sollen sensible Daten beim Konvertieren im Internet nicht preisgegeben werden, empfiehlt sich die Umwandlung auf dem eigenen Rechner. Dazu braucht man nicht einmal ein Programm zu installieren, einfach zu bewerkstelligen ist es mit PowerShell.

PowerShell öffnen und folgenden Befehl ausführen:

Mit Notepad die Code Zeilen einfügen und speichern:

PowerShell beenden und neu öffnen, nun kann der Befehl text2hex ausgeführt werden.

Die Umwandlung von Decimal to Binary, Decimal to Hexadecimal und Hexadecimal to Decimal.

 

OpenSSH on Windows

OpenSSH ist das führende Konnektivitätstool für die Remote-Anmeldung mit dem SSH-Protokoll in Unix/Linux Umgebungen. OpenSSH verschlüsselt den Datenverkehr, darüber hinaus bietet OpenSSH eine große Auswahl an sicheren Tunneling-Funktionen, mehrere Authentifizierungsmethoden und anspruchsvolle Konfigurationsoptionen.

Für die Remoteverwaltung in heterogenen Netzwerken, haben Windows und Unix/Linux nicht viel gemeinsames. Unter Unix/Linux ist der Remote-Zugriff per SSH ein Standard für Datentransfer, Remote-Terminal sowie Port-Forwarding für Remote-X. Unter Windows ist ein wirklicher Standard noch nicht erreicht, neben WinRM, PowerShell-Remote, RDS und RSAT gibt es einige mehr. Hinzugekommen ist nun auch ein Port des freien OpenSSH Client/Server Tools, dies ermöglicht weitere Integration und Verwaltung von Windows und Linux/Unix Umgebungen.

Die OpenSSH Suite ist auf Github verfügbar und besteht aktuell aus folgenden Tools:

  • Remote-Operationen werden mit ssh, scp und sftp durchgeführt
  • Key Management mit ssh-add, ssh-keygen
  • Die Service-Seite besteht aus sshd, sftp-server und ssh-agent
Win32 OpenSSH Installation

Nach dem Download das Zip-Archive in C:\Program Files\OpenSSH entpacken.

Starte PowerShell als Administrator und wechsle in den Pfad C:\Program Files\OpenSSH und führe folgende Aktion aus.

Die SSH-Host-Schlüssel generieren mit allen Schlüssel die sshd für Key-auth erwartet.

Die Firewall auf Windows Server für SSH erweitern.

Bei der Windows Workstation werden eingehende SSH Verbindungen wie folgt erlaubt.

Der SSH-Agent hält den privaten Schlüssel im Arbeitsspeicher.

Nun können SSH Verbinden aufgebaut werden.

openSSH-client

Den SSH Daemon Auto-start (Boot) aktivieren.

Ein Schlüsselpar wird wie folgt generiert.

 

 

Visual Studio PowerShell Hands-on

Visual Studio 2017 unterstützt die Programmierung in mehreren Sprachen, im Build-in ist Visual C#, C/C++ und F#. Weitere Sprachen wie JavaScript oder Python können nachgeladen werden. Möchte man mit PowerShell Scripte arbeiten, benötigt man die Visual StudioPowerShell-Tools, diese können über den Visual Studio Installer (vs_installer.exe) hinzugefügt werden, über den VS Installer kann die Arbeitsumgebung nach der Installation angepasst werden, einzelne Komponenten können hinzugefügt oder entfernt werden.

Um die PowerShell Codetools zu laden geht man im Visual Studio Installer auf das Menu Einzelne Komponenten und zum Abschnitt Codetools, aktiviert PowerShell-Tools und klickt auf ändern.

Visual Studio
Visual Studio Installer

Nach dem hinzufügen der PowerShell-Tools können Scripte mit F5 im Debugger ausgeführt werden.

Visual Studio Debugger
Visual Studio Debugger

 

Powershell Open Source für Linux

PowerShell Open Source ist für Linux verfügbar. Microsofts Hingabe für Linux geht weiter. Das Management-Tool für Windows, die PowerShell, läuft auf dem freien Betriebssystem Linux. Die PowerShell ist zudem Open Source und nutzt künftig OpenSSH, bekannt als Posh-SSH für den Transport.

Das Entwicklerteam der PowerShell, dem wohl wichtigsten Verwaltungswerkzeug für Windows-Admins, hat seinen Kommandozeileninterpreter von Beginn an vermehrt an die Konzepte typischer Unix-Shells angelehnt und nach mehrjährigen Versuchen zuletzt auch den OpenSSH-Port auf Windows portiert. Folglich steht die PowerShell als Open-Source-Software zur Verfügung und ist auf Linux portiert worden.

Möglich geworden ist der Port auf Linux sowie die Offenlegung der PowerShell durch die vorangegangene erfolgreiche Portierung des Frameworks .Net Core, das ebenfalls als Open Source entwickelt wird. Die PowerShell läuft zusätzlich zu den Linux-Distributionen Ubuntu, CentOS und Red Hat Enterprise Linux auch auf Mac OS X.

Die Entwicklung des Codes der PowerShell findet auf Github statt.

Für die Weiterentwicklung der PowerShell will Microsoft darüber hinaus aktiv mit interessierten Unternehmen zusammenarbeiten. Dazu zählen aktuell Google und VMware.