Diese 5 Windows PowerShell-Befehle sind so gut, dass sie sich wie schummeln anfühlen

Indeks
  1. Ergebnisse in ein durchsuchbares Fenster senden
    1. Das bedeutet wirklich schnellen Zugriff
  2. Code auf vielen Computern gleichzeitig ausführen
    1. Mehr Arbeit in kürzerer Zeit erledigen
  3. Vergangene Arbeiten mit Tastenkombinationen finden
    1. Stoppen Sie das erneute Eintippen derselben Befehle
  4. Dateien live aktualisieren beobachten
    1. Änderungen in Echtzeit sehen
  5. Eingrenzen von Listen um spezifische Elemente zu finden
    1. Nadel im Heuhaufen finden
    2. Befehle für die Zukunft griffbereit halten

Entdecken Sie nützliche PowerShell Cmdlets, um Arbeitsabläufe effizienter zu gestalten, repetitive Aufgaben zu automatisieren und Informationen schnell abzurufen. Verbessern Sie Ihre Effizienz und Produktivität.

Wenn Sie regelmäßig mit PowerShell arbeiten, haben Sie wahrscheinlich Befehle, die Sie vergessen haben, neu eingetippt, Protokolldateien manuell überprüft oder sich einzeln in Server eingeloggt. Das wird auf Dauer nervig und es frustriert zu wissen, dass man es wiederholt tun muss. Einige Cmdlets können diese Probleme für Sie lösen und sind äußerst nützlich für den täglichen Gebrauch.

Ergebnisse in ein durchsuchbares Fenster senden

Das bedeutet wirklich schnellen Zugriff

Wenn Sie eine Menge von Text in Ihrer Konsole scrollen sehen, wird es schwierig sein, spezifische Informationen leicht zu finden. Das Cmdlet Out-GridView hilft hier. Wenn Sie Ihre Ergebnisse in dieses Cmdlet pipen, verwandelt es die Texteingabe in ein separates Fenster, in dem Ihre Daten in einer Tabelle angezeigt werden. Anstatt den komplexen Filtercode jedes Mal anzupassen, wenn Sie etwas finden möchten, gibt Ihnen dieser Befehl die Möglichkeit, per Mausklick zu steuern.

Das Fenster hat oben ein Suchfilterfeld, mit dem Sie durch tausende von Datenzeilen, wie dichte Ereignisprotokolle oder Hintergrundprozesse, nur durch Eingabe eines Schlüsselworts suchen können. Sie können Informationen sortieren, indem Sie auf die Spaltenüberschriften klicken oder Kriterienfilter über Dropdown-Menüs hinzufügen, um die Ergebnisse zu verfeinern, ohne weiteren Code hinzuzufügen.

Stellen Sie sicher, dass Sie -PassThru hinzufügen, denn das macht das Grid-Fenster zu einem interaktiven Auswahlwerkzeug. Es pausiert Ihr Skript und lässt Sie spezifische Zeilen markieren. Sobald Sie auf OK klicken, schließt sich das Fenster und diese Elemente werden zurück in die Pipeline gesendet, sodass Ihr Skript weiter an ihnen arbeiten kann. Dies ist ein großer Schritt, um zu lernen, wie man Windows automatisiert.

Code auf vielen Computern gleichzeitig ausführen

Mehr Arbeit in kürzerer Zeit erledigen

Wenn Sie viele Server betreiben, wissen Sie, wie es ist, sich einzeln auf jede Maschine einzuloggen für Überprüfungen oder Updates. Invoke-Command spart Zeit, denn es führt Code gleichzeitig auf hunderten von Remote-Maschinen aus, anstatt jeden Server einzeln zu besuchen. Sie brauchen es wahrscheinlich nicht für Hunderte, aber wenn Sie vier oder fünf haben, spart dies viel Zeit.

Dieser Befehl verwendet Remote-Protokolle wie WinRM auf Windows oder SSH für plattformübergreifende Setups, um One-to-Many-Remoting zu unterstützen. Es sendet Anweisungen an jeden Computer in Ihrer Liste und sammelt die Ergebnisse in Ihrer Konsole. Wenn Sie ein Skriptblock an das Cmdlet übergeben, wird Ihr Code gleichzeitig an alle Zielsysteme gesendet. Wenn die Remote-Ausführungen abgeschlossen sind, kommen die Ergebnisse als Objekte in Ihre lokale Sitzung zurück, sodass Sie jede Maschine nicht überwachen müssen.

Um Ihnen zu helfen, die eingehenden Daten zu verfolgen, fügt PowerShell jedem Objekt eine PSComputerName-Eigenschaft hinzu, die zeigt, von welchem Server es stammt. Dies gibt Ihnen die Möglichkeit, die Daten lokal zu gruppieren und zu sortieren, um Unterschiede in Ihrem Setup zu finden.

Vergangene Arbeiten mit Tastenkombinationen finden

Stoppen Sie das erneute Eintippen derselben Befehle

Wenn Sie Zeit damit verbracht haben, einen komplexen PowerShell-Befehl zu erstellen, könnten Sie ein paar Tage später feststellen, dass Sie dieselbe Logik benötigen, sich aber nicht an die Syntax erinnern können. PowerShell hat ein Befehlsverlaufssystem, das wie ein Protokoll Ihrer vergangenen Arbeiten ist und es Ihnen ermöglicht, zuvor ausgeführte Befehle abzurufen.

Wenn Sie einen Befehl eingeben, speichert PowerShell ihn. Moderne Umgebungen verwenden eine integrierte Sitzungsverlauf und einen persistenten Verlauf, den das PSReadLine-Modul verwaltet. Während der integrierte Verlauf nur die Befehle in Ihrer aktuellen Sitzung verfolgt und PowerShell sie beim Schließen des Fensters löscht, behält PSReadLine einen kontinuierlichen Verlauf.

Dieses Modul schreibt jeden Befehl, den Sie in allen Sitzungen eingeben, in eine Datei auf Ihrem Computer, sodass Sie Ihre Arbeit über Neustarts hinweg nicht verlieren. Anstatt lange Skripte erneut einzutippen, können Sie eine Tastenkombination verwenden, um Befehle abzurufen, die Sie zuvor verwendet haben. Wenn Sie das Rautezeichen # gefolgt von einem Schlüsselwort aus dem Befehl eingeben und die Tabulatortaste drücken, durchsucht PowerShell Ihren Verlauf nach der neuesten Übereinstimmung. Drücken Sie einfach weiter die Tabulatortaste, bis Sie finden, was Sie benötigen. Ich beginne mit #get und drücke dann Tab, und meistens findet es schneller, was ich brauche.

Dateien live aktualisieren beobachten

Änderungen in Echtzeit sehen

Es ist nervig, denselben Befehl wiederholt auszuführen, nur um zu sehen, ob eine Protokolldatei aktualisiert wurde. Wenn Sie eine Datei live sehen möchten, während das System darin schreibt, ist das Cmdlet Get-Content mit dem Parameter -Wait eine großartige Möglichkeit, dies zu beobachten. Normalerweise liest Get-Content eine Datei und zeigt ihren Inhalt an. Das Cmdlet funktioniert jedoch anders.

Wenn Sie den -Wait-Parameter hinzufügen.

Anstatt die Datei zu schließen, bleibt PowerShell mit der Verbindung geöffnet und überprüft jede Sekunde auf neuen Inhalt. Wenn das System neue Zeilen hinzufügt, sehen Sie sie auf Ihrem Bildschirm. Da Sie den Befehl nicht neu starten müssen, ist dies eine ausgezeichnete Möglichkeit, um nach Fehlern zu suchen oder zu verfolgen, wie ein Hintergrundprozess läuft.

Sie können dies anpassen, indem Sie -Wait mit Code wie -Tail kombinieren. Wenn Sie beispielsweise eine sehr große Protokolldatei beobachten, verwenden Sie -Tail, um nur die letzten paar Zeilen anzuzeigen, bevor es mit dem Warten beginnt. Dies verhindert, dass Ihre Konsole zu viele alte Daten anzeigt. Wenn Sie -TotalCount verwenden, um nach mehr Zeilen zu fragen, als die Datei enthält, zeigt Get-Content ihren aktuellen Inhalt an und wartet, bis das System die anderen Zeilen auf die Festplatte schreibt. Dies hilft Skripten, die warten müssen, bis ein bestimmtes Protokol Ereignis eintritt.

Eingrenzen von Listen um spezifische Elemente zu finden

Nadel im Heuhaufen finden

Die spezifischen Informationen, die Sie in einem großen Datensatz benötigen, zu finden, ist schwierig, aber Filtern ist eine großartige Lösung. Wenn Sie mit zu vielen Ergebnissen umgehen, verkürzt der Befehl Where-Object die Listen, um nur die wichtigen Elemente anzuzeigen. Dies nimmt die Ausgabe anderer Befehle und schränkt diese Daten basierend auf den festgelegten Regeln ein. Sie können nach Dateien suchen, die zu groß sind, oder Systemdienste filtern, um solche zu finden, die nicht gestartet sind.

Das Cmdlet Where-Object ist wie ein Torwächter in der Pipeline, der jedes Objekt überprüft und nur diejenigen weiterlässt, die Ihren Kriterien entsprechen. PowerShell ermöglicht es Ihnen, diese Regeln mit einer einfacheren Syntax zu setzen, die wie natürliche Sprache klingt. Dadurch wird es einfach, schnelle Abgleichungen durchzuführen, wie etwa zu überprüfen, ob der Status eines Dienstes einem bestimmten Zustand entspricht.

Für etwas Komplexeres können Sie die Scriptblock-Syntax mit geschweiften Klammern und Variablen verwenden, um mehrere Bedingungen gleichzeitig zu überprüfen. Dies erlaubt es Ihnen, Operatoren wie -and und -or zu kombinieren, um spezifische Filter zu erstellen.

Befehle für die Zukunft griffbereit halten

Keine dieser Cmdlets benötigt eine zusätzliche Konfiguration oder Drittanbieter-Tools. Sie sind bereits in PowerShell vorhanden, und das einzige, was Sie von der Nutzung trennt, ist das Wissen, dass sie existieren. Sobald Sie anfangen, sie in Ihre Routine einzubauen, werden Sie ziemlich schnell bemerken, wie viel Zeit Sie mit dem langen Weg verschwendet haben. Stellen Sie nur sicher, dass Sie sie aufschreiben oder diese Seite als Lesezeichen speichern, damit Sie sie bei Bedarf wiederfinden können.

Bist du neugierig auf weitere Artikel wie Diese 5 Windows PowerShell-Befehle sind so gut, dass sie sich wie schummeln anfühlen? Entdecke spannende Inhalte in der Kategorie Windows.

Schreibe einen Kommentar

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

Go up