Vier Funktionen in PowerShell Version 5, die Requisiten verdienen

Microsoft hat viel Zeit investiert, um Windows PowerShell Version 5 um zahlreiche Funktionen zu erweitern. Einige der wichtigsten Funktionen in PowerShell 5 sind Klassen, das PowerShellGet-Modul, das PackageManagement-Modul und das neue Schreibinformationen Cmdlet haben viel Aufmerksamkeit bekommen.

Es gab jedoch Dutzende anderer nützlicher Updates für PowerShell das ging im Summen der großen Updates verloren. Hier sind vier neue PowerShell 5-Funktionen, von denen ich glaube, dass sie mehr Abdeckung erhalten sollten.

Ein besseres Cmdlet für die Dateiverwaltung

Lee Holmes, leitender Softwareentwickler für PowerShell bei Microsoft, hat vor Jahren ein beliebtes Skript namens Send-File.ps1 erstellt, das Dateien über PowerShell-Remoting-Sitzungen sendet. Das Skript ist nützlich, da kein Server Message Block erforderlich ist, um eine Datei von Punkt A nach Punkt B abzurufen.
Mit diesem Skript machten sich Administratoren keine Sorgen darüber, einen anderen Port in der Firewall zu öffnen. Dateikopien können dann den PowerShell-Remoting-TCP-Port verwenden. Microsoft hat beschlossen, diese Funktionalität in die native Codebasis zu integrieren, indem diese Funktionalität auf der implementiert wird Artikel kopieren Cmdlet mit dem Parameter ToSession.

PowerShell-Kopieren
Abbildung 1: Microsoft hat eine nahtlosere Möglichkeit zum Kopieren von Dateien und Ordnern zwischen PowerShell-Sitzungen hinzugefügt.

Im Abbildung 1Das Beispiel zeigt, wie Sie eine neue PowerShell-Sitzung auf einem Remotecomputer einrichten, die Quelle einer lokalen Datei, das Ziel und die zu verwendende Sitzung angeben. Kein externes Skript erforderlich.

Native .zip-Unterstützung hinzugefügt

In der vorherigen Version von PowerShell gab es keine native Funktion zum Erstellen und Erweitern von ZIP-Dateien. Sie mussten das Internet nach Skripten durchsuchen, um dies zu tun. PowerShell Version 5 erleichtert das Arbeiten mit ZIP-Dateien, da diese Unterstützung direkt in die Sprache des Microsoft.PowerShell.Archive-Moduls integriert ist. Dieses Modul enthält ein Cmdlet zum Erstellen von ZIP-Dateien mit dem Namen Komprimierungsarchiv und ein Cmdlet zum Entpacken oder Erweitern von aufgerufenen ZIP-Dateien Erweitern-Archiv.

Support.zip-Datei
Abbildung 2: Das Cmdlet Compress-Archive kann eine Gruppe von Dateien in eine ZIP-Datei komprimieren.

Im Figur 2können Sie sehen, dass es möglich ist, eine Liste von Dateien in einem Ordner zu sammeln und diese dann an zu übergeben Komprimierungsarchiv um eine .zip-Datei zu erstellen. Umgekehrt können Sie die ZIP-Datei an übergeben Erweitern-Archiv Dadurch wird der Inhalt erweitert.

Unterstützung für native symbolische Links

Das Bash Shell unter Linux hat die Fähigkeit, für eine ganze Weile symbolische Dateisystem-Links zu erstellen. Obwohl dies in früheren Versionen von PowerShell technisch möglich war, indem Code in .NET entwickelt oder Befehlszeilenprogramme wie verwendet wurden mklink.exeIn PowerShell Version 5 ist es jetzt eine native Funktion.
Durch Hinzufügen eines einzelnen Parameterarguments zum ItemType-Parameter des Neuer Gegenstand Mit dem Cmdlet können Sie nativ symbolische Links erstellen, ohne externe Befehlszeilendienstprogramme zu verwenden .NET-Code.

Symbolische Links erstellen
Abbildung 3: Der mit dem Cmdlet New-Item verwendete Parameter ItemType kann in PowerShell 5 nativ symbolische Links erstellen.

Im Figur 3Im Ordner C: Windows Temp erstellen wir einen symbolischen Link namens MySymLinkFile.txt, der mit der Datei text.txt im aktuellen Verzeichnis verknüpft ist. Beachten Sie die Mode-Eigenschaft und den letzten Attributbuchstaben “l”, der eine symbolische Verknüpfung kennzeichnet.

Begrenzen der Ordnertiefe mit Get-ChildItem

PowerShell hat das schon lange Get-ChildItem Cmdlet zum Auflisten verschiedener Elemente, die von Anbietern präsentiert werden. Verwenden von Get-ChildItem Das Auflisten von Dateien und Ordnern im Dateisystem oder von Registrierungsschlüsseln in der Registrierung sind einige der beliebtesten Verwendungszwecke dieses Cmdlets. Das Dateisystem und die Registrierung speichern Informationen in hierarchischer Form über Ordner oder Registrierungsschlüssel.
Sys-Administratoren können den Parameter -Recurse verwenden, um in Unterordnern oder Schlüsseln gespeicherte Elemente zu finden. Dieser Parameter kann die Hierarchie der Elemente “durchlaufen”, um alle Unterordner oder aufzulisten Registrierungsschlüssel. Die Begrenzung der Hierarchietiefe war jedoch immer eine Herausforderung. Microsoft hat den Parameter –Depth für entwickelt Get-ChildItem um diese Aufgabe zu erleichtern.

Begrenzung der Ordnertiefe
Abbildung 4: Microsoft hat den Parameter –Depth für das Cmdlet Get-ChildItem entwickelt, um die Liste der Ordner durch Angabe der Tiefe einzuschränken.

Angenommen, wir haben eine Ordnerstruktur, die fünf Ebenen tief ist. mit Get-ChildItem Mit dem Parameter –Recurse kann ich jeden dieser Ordner auflisten. Aber wenn, in Figur 4, Ich möchte alle Ordner nur zwei Ebenen tief sehen. Ich kann dies mithilfe des Parameters –Depth und der Menge angeben, die ich sehen möchte.
Dies sind nur vier der vielen nützlichen Updates für PowerShell 5. Um die gesamte Liste der neuen Funktionen anzuzeigen, lesen Sie die Was ist neu im PowerShell Technet-Artikel? Hier beschreibt Microsoft die neuen Updates und Funktionen.

Similar Posts

Leave a Reply