Die meisten von uns bevorzugen PowerShell aufgrund seiner Automatisierungsfähigkeiten. Es ist eine Kommandozeilen-Shell mit einer ausgereiften Skriptsprache. Sie können die integrierten Cmdlets verwenden oder Ihr eigenes Skript schreiben, um die Verwaltungsaufgaben von Windows und anderen kompatiblen Betriebssystemen zu automatisieren. Sie können damit alles tun, was Sie mit den GUI-Apps tun können, und mehr.

Die Beherrschung der Funktionalität und Flexibilität von PowerShell erfordert jedoch eine steile Lernkurve. Wenn Sie gerade erst mit PowerShell beginnen, können Sie hier die wichtigsten Befehle lernen, um diese Skriptsprache langfristig zu beherrschen.

1. Hilfe bekommen

Hilfe bekommen, wie der Name schon sagt, ist Teil des integrierten Hilfesystems von PowerShell. Es hilft Ihnen, notwendige Informationen für den Befehl, Konzepte und Funktionen zu finden, Aliasnamen, Skripte und mehr zu identifizieren.

Um Hilfe für ein PowerShell-Cmdlet zu erhalten, müssen Sie das Cmdlet Get-help gefolgt von einem Cmdlet-Namen verwenden. Geben Sie beispielsweise Folgendes ein, um die mit dem Cmdlet „get-process“ verknüpfte Zusammenfassung und Syntax anzuzeigen:

instagram viewer

Erhalten-HilfeErhalten-Verfahren

Dieser Befehl kann sowohl kommentarbasierte als auch XML-basierte Hilfe lesen, die vom Funktionsautor bereitgestellt wird.

Alternativ können Sie die verwenden Get-Help -online Befehl, um Hilfe für ein PowerShell-Cmdlet online abzurufen. Um beispielsweise die Online-Dokumentation von Microsoft für die Get-Content Cmdlet, Typ:

Erhalten-HilfeErhalten-Inhalt -online

2. Get-Prozess

Der Get-Prozess Der Befehl hilft Ihnen, eine Liste aller aktiven Systemprozesse mit ihren Kennungen (IDs) abzurufen und anzuzeigen. Sie können es als verwenden effiziente Alternative zum Windows Task-Manager zum Anzeigen, Stoppen und Neustarten von Systemprozessen.

Wenn Sie beispielsweise den GameBar-Prozess stoppen müssen, müssen Sie zuerst die damit verbundene Prozess-ID finden. Geben Sie also Folgendes ein:

Get-Prozess

Dieser Befehl zeigt alle laufenden Systemprozesse an. Suchen Sie als Nächstes die ID, die dem Prozess zugeordnet ist, den Sie stoppen möchten. Geben Sie Folgendes ein, um den Vorgang zu stoppen:

Get-Process-ID 20496 | Stoppen-Verfahren

Hier -ID 20496 ist die ID des Prozesses (GameBar), den Sie stoppen möchten.

3. Start-Vorgang

Du kannst den... benutzen Start-Vorgang Cmdlet in PowerShell, um einen oder mehrere Prozesse auf einem lokalen Computer zu starten. Um das Cmdlet zu verwenden, geben Sie Start-Process gefolgt vom Prozessnamen ein. Wenn Sie beispielsweise einen neuen Notepad-Prozess starten möchten, geben Sie Folgendes ein:

Start-Notizblock verarbeiten 

Darüber hinaus können Sie die Parameter von Start-Process verwenden, um Optionen anzugeben. Wenn Sie beispielsweise einen Prozess als Administrator starten müssen, geben Sie Folgendes ein:

Start-Prozess -Dateipfad "Notizblock" -Verb laufenAls

4. Get-Befehl

Der Get-Befehl können Sie alle auf Ihrem Computer installierten PowerShell-Befehle anzeigen. Ähnlich wie bei Get-Help können Sie den Get-Command gefolgt von einer Suchabfrage verwenden, um Befehle für eine bestimmte Funktion zu finden.

Da der Get-Command alle Befehle anzeigt, können Sie Parameter angeben, um Features mit einem bestimmten Namen und CommandType zu finden. Um beispielsweise Cmdlets (CommandTypes) zu finden, die mit A (Name) beginnen, geben Sie Folgendes ein:

Get-Command -Name A* -CommandType-Cmdlet

Geben Sie alternativ ein Get-Help Get-Command -Beispiele um weitere Beispiele anzuzeigen.

5. Get-Service

Der Get-Service cmdlet können Sie den Status Ihres Computers und die Liste der Dienste anzeigen. Standardmäßig gibt der Get-Service-Befehl alle (gestoppten und laufenden) Dienste zurück.

Sie können die Parameter verwenden, um Services anhand ihres Status, Namens und abhängiger Services anzugeben und zu finden. Um beispielsweise alle Dienste anzuzeigen, die mit dem Namen Win beginnen, geben Sie Folgendes ein:

Get-Service-Name "Gewinnen*"

6. Get-ChildItem

Sie können PowerShell verwenden, um Verzeichnisse zu durchsuchen. Der Get-ChildItem Der Befehl ist ein praktisches Cmdlet, mit dem Sie nach Ordnern und Dateien suchen und schnell inhaltsbasierte Suchen durchführen können, ohne den Datei-Explorer zu verwenden.

Um alle Ordner der obersten Ebene im Verzeichnis C:\ anzuzeigen, geben Sie Folgendes ein:

Get-ChildItem "C:\"

Verwenden Sie zusätzlich die -Weg -Parameter, um einen bestimmten Ordner, Unterordner und Inhalt anzuzeigen. Um beispielsweise alle Unterordner und Dateien im Ordner „Programme“ anzuzeigen, geben Sie Folgendes ein:

Get-ChildItem-Pfad "C:\Programme"

Verwenden Sie zusätzlich die -Rückfall Parameter, um alle Dateien im angegebenen Ordner anzuzeigen und die -Name -Parameter zum Anzeigen von Elementnamen in einem Verzeichnis.

Get-ChildItem-Pfad "C:\Programme\Fodler_Name" -Rekurs | Wählen Sie Vollständiger Name

Ersetzen Sie im obigen Befehl Unterordner mit dem Ordnernamen, um seinen Inhalt anzuzeigen.

7. Copy-Item

Der Copy-Item Cmdlet können Sie Dateien und Ordner und deren Inhalte kopieren und in ein anderes Verzeichnis einfügen. Um Dateien und Ordner zu kopieren, geben Sie ein Copy-Item gefolgt von der Quelle -Weg, -Ziel Parameter und Zieladresse. Zum Beispiel kopieren E:\Ordner1 und dessen Inhalt zu E:\Ordner2, Typ:

Copy-Item "E:\Ordner1" -Ziel "E:\Ordner2" -Rekurs

Notiere dass der -Rekurs Der Parameter im obigen Befehl ist für das Verschieben des gesamten Ordnerinhalts verantwortlich. Ohne sie kopiert PowerShell nur den Ordner der obersten Ebene (Folder1) und die im Befehl angegebenen Dateien.

8. Move-Item

Um ein Element zu verschieben, können Sie auf ähnliche Weise verwenden Move-Item cmdlet. Um beispielsweise den Ordner, die Dateien, Unterordner und seinen gesamten Inhalt an das angegebene Ziel zu verschieben, geben Sie Folgendes ein:

Move-Item-Pfad "E:\Ordner1" -Ziel "E:\Ordner2"

9. Gegenstand entfernen

Der Gegenstand entfernen Cmdlet können Sie Dateien, Ordner, Funktionen und andere Datentypen aus dem angegebenen Verzeichnis löschen. Um beispielsweise die Datei Test.txt im Ordner E:\Folder1 zu löschen, geben Sie Folgendes ein:

Gegenstand entfernenE:\Ordner1\Prüfen.txt

10. Get-Content

Der Get-Content Mit dem Cmdlet können Sie den Inhalt eines Elements anzeigen, ohne einen Texteditor zu verwenden. Um beispielsweise den Inhalt der Datei Test.txt abzurufen, geben Sie Folgendes ein:

Get-Content "E:\Ordner1\Test.txt"

Sie können die anzuzeigende Inhaltslänge mithilfe von weiter spezifizieren -Komplette Anzahl Parameter.

11. Klarer Inhalt

Du kannst den... benutzen Klarer Inhalt Cmdlet, um den Inhalt einer angegebenen Datei zu löschen, ohne die Datei selbst zu löschen. Nützlich für die Aufgabenautomatisierung, wenn Sie einen fest codierten Dateinamen haben, aber jedes Mal, wenn das Skript ausgeführt wird, eine saubere Datei haben möchten.

Erstellen Sie zum Testen des Befehls eine Textdatei mit Inhalt. Geben Sie als Nächstes Folgendes ein:

Clear-Content-Pfad "E:\Ordner1\Test1.txt"

Dadurch wird der Inhalt der Datei gelöscht, ohne die Datei zu löschen.

12. Set-ExecutionPolicy

Die standardmäßige Ausführungsrichtlinie in PowerShell ist auf „Eingeschränkt“ festgelegt. Dadurch wird die Ausführung schädlicher Skripte in der PowerShell-Umgebung verhindert. Wenn Sie jedoch ein lokales PowerShell-Skript ausführen, kann es vorkommen, dass das Ausführungsskript bei diesem Systemfehler deaktiviert ist.

Der Set-ExecutionPolicy Mit Cmdlets können Sie die Sicherheitsstufen für die Skriptausführung ändern. Geben Sie Folgendes ein, um Ihre aktuelle Ausführungsrichtlinie zu erfahren:

Get-ExecutionPolicy

Wenn Sie ein nicht signiertes Skript ausführen müssen, geben Sie in einer PowerShell-Eingabeaufforderung mit erhöhten Rechten Folgendes ein:

Satz-ExecutionPolicy Remotesigniert

Andere gültige Set-ExecutionPolicy-Werte umfassen Eingeschränkt, Allesigniert, Und Uneingeschränkt.

13. Ort festlegen

Standardmäßig verwendet PowerShell C:\Benutzer\Benutzername als Standard-Arbeitsverzeichnis. Der Ort festlegen Mit dem Cmdlet können Sie das aktuelle Arbeitsverzeichnis auf einen bestimmten Speicherort festlegen. Nützlich, wenn Sie ein Skript oder einen Befehl von einem bestimmten Ort aus ausführen möchten, ohne jedes Mal den Pfad angeben zu müssen.

Zum Beispiel einstellen C:\Benutzer\Benutzername\Dokumente Geben Sie als aktuelles Arbeitsverzeichnis Folgendes ein:

Ort festlegen "C:\Benutzer\usumbenennen\Dokumente"

Dies ist eine vorübergehende Maßnahme, da PowerShell das Arbeitsverzeichnis nach dem Neustart auf das Standardverzeichnis zurücksetzt.

14. Export-CSV

Wenn Sie die PowerShell-Ausgabe organisierter exportieren und präsentieren möchten, können Sie die Export-CSV cmdlet. Es nimmt die Ausgabedatei für den angegebenen Befehl und konvertiert sie in eine CSV-Datei.

Um den Befehl zu testen, versuchen Sie den folgenden Befehl:

Get-Prozess | Export-CSV PSprocess.csv

Der obige Befehl erstellt eine psporcess.csv Datei mit allen Daten der aktiven Prozesse.

15. ConvertTo-HTML

Wenn Sie lieber einen HTML-Bericht erstellen möchten, können Sie die verwenden ConvertTo-HTML Cmdlet. Geben Sie Folgendes ein, um einen HTML-Bericht für alle laufenden Prozesse auf Ihrem PC zu erstellen:

Get-Prozess | ConvertTo-HTML > PSprocess.html

Im obigen Befehl psprozess der Name der Exportdatei ist und HTML ist die Erweiterung. Sie können auf die exportierte HTML-Datei im aktuellen Arbeitsverzeichnis unter C:\Benutzer\Benutzername zugreifen.

16. Get-Geschichte

Du kannst den... benutzen Oben unten Pfeiltaste, um durch die zuletzt ausgeführten Befehle in PowerShell zu blättern. Um jedoch eine Liste aller kürzlich ausgeführten Befehle in Ihrer aktuellen Sitzung auf einmal anzuzeigen, können Sie die verwenden Get-Geschichte cmdlet.

Es zeigt eine Liste aller kürzlich ausgeführten Befehle mit ihrer ID an. Nützlich, wenn Sie den vollständigen Kontext der zuvor ausgeführten Befehle anzeigen möchten. Geben Sie dazu Folgendes ein:

Get-Historie-ID | Fl

Um beispielsweise die Ausführungsdetails wie Status, Start- und Endzeit und Dauer für den dritten Befehl anzuzeigen, geben Sie Folgendes ein:

erhalten-Geschichte 3 | fl, 

Um einen beliebigen Befehl aus der Liste erneut auszuführen, geben Sie Folgendes ein:

Invoke-History gefolgt von der Befehl Ausweis

Zum Beispiel, Typ Aufrufverlauf 3 um einen zuvor ausgeführten Befehl erneut auszuführen, ohne ihn erneut einzugeben.

Zusätzlich verwenden Clear-Geschichte, um den Verlauf für die aktuelle Sitzung zu löschen.

Nachdem Sie nun eine grundlegende Vorstellung von PowerShell-Befehlen haben, machen Sie weiter und erkunden Sie unseren Leitfaden am besten PowerShell-Cmdlets zur Verbesserung Ihrer Windows-Administratorfähigkeiten. Hier erfahren Sie, wie Sie mit Daten mithilfe von Cmdlets arbeiten, Tabellen und Listen formatieren und einen schnellen Überblick über den Befehl „Get-Member“ erhalten.

PowerShell-Befehle zur Optimierung Ihrer Aufgaben

PowerShell ist bekannt für seine Automatisierungsfähigkeiten. Dies kann Ihnen helfen, Hunderte von Aktivitäten in Ihrer Entwicklungsarbeit zu automatisieren, um Zeit zu sparen und die Produktivität zu steigern.

Obwohl wir nur die grundlegenden Befehle behandelt haben, versuchen Sie, die Syntax, den Alias ​​und die Variablen zu erkunden, Funktionen, die für viele dieser Befehle verfügbar sind, um diese hocheffiziente Skriptsprache zu beherrschen.