16 Wesentliche PowerShell-Befehle, die Sie kennen sollten

Featured Top Essential Powershell Commands

Windows PowerShell ist eine leistungsstarke Anwendung, die auf dem .NET-Framework basiert. Sie verwendet PowerShell-Befehle, die Cmdlets genannt werden. Durch das Kombinieren dieser Befehle in einer bestimmten Reihenfolge können Sie nahezu jede Operation über das PowerShell-Fenster ausführen. Um zu erklären, wie es funktioniert, haben wir die wesentlichsten PowerShell-Befehle herausgesucht.

Gut zu wissen: Windows kann “Powershell.exe” nicht finden? Erfahren Sie, was zu tun ist, um es zurückzubringen.

Inhaltsverzeichnis

  • So verwenden Sie PowerShell-Befehle
  • Wesentliche PowerShell-Befehle
    1. Clear-Host oder Cls
    1. Convert-to-HTML
    1. Get-Command
    1. Get-Help
    1. Get-Process
    1. Get-Service
    1. Install-Module oder Install-Script
    1. mkdir, md, rmdir
    1. New-Item
    1. Remove-Item
    1. Set-ExecutionPolicy
    1. Select-Object und Sort-Object
    1. Start- und Stop-Process
    1. Suspend- und Resume-Service
    1. Test-Path
    1. Wait-Process
  • Weitere wesentliche PowerShell-Befehle
  • Häufig gestellte Fragen

So verwenden Sie PowerShell-Befehle

Um Cmdlets zu verwenden, müssen Sie PowerShell im Administrator-Modus über das Suchmenü starten.

Öffnen Sie PowerShell im Administratormodus über die Windows 11-Suche.

Wesentliche PowerShell-Befehle

PowerShell in Windows ist nicht nur eine aktive Eingabeaufforderung, sondern auch ein Skript- und Programmfenster, das jede gewünschte Anwendung oder jeden gewünschten Prozess ausführen kann. Während es mehrere hundert Cmdlets gibt, müssen Sie zum Einstieg nur die wesentlichsten lernen.

1. Clear-Host oder Cls

Haben Sie beim Tippen einen Fehler gemacht oder läuft etwas nicht nach Plan? Glücklicherweise gibt es in PowerShell eine Rückgängig-Funktion. Der praktische Befehl clear-host kann den gesamten Text von der Anzeige löschen. Geben Sie einfach den Befehl in eine beliebige Zeile auf Ihrem Bildschirm ein, und alles wird sofort verschwinden.

Clear-host-Befehl zum Entfernen des gesamten Textes im PowerShell-Fenster.

Sie können auch den einfacheren Befehl cls verwenden, der häufig in der Eingabeaufforderung verwendet wird, auch mit PowerShell. Diese beiden Textlöschen-Befehle sind nützlich, wenn Sie eine Fehlermeldung erhalten.

Eingabe des cls-Befehls unter der Fehlermeldung zum Entfernen des gesamten Textes in PowerShell.

Um Tippfehler in der Eingabeaufforderung oder im PowerShell-Fenster zu vermeiden, kopieren Sie die Befehle zur Effizienzsteigerung.

Tipp: Verwenden Sie PowerShell, um Windows-Updates zu verbergen, wie in diesem Leitfaden gezeigt.

2. Convert-to-HTML

Eine große HTML-Zeichenkette ist ästhetischer als ein Blick auf die überfüllten PowerShell-Screenshots. Es ist auch nützlich, wenn Sie Skriptfehler und andere PowerShell-Ereignisse mit nicht-technischen Teammitgliedern teilen müssen.

Alle PowerShell-Komponenten verwenden .NET-Objekte, die wir auf dem PowerShell-Bildschirm anzeigen können. Um sie in einem vollständigen Browserfenster anzuzeigen, verwenden Sie das Cmdlet Convert-to-HTML. Unten ist ein Beispiel zur Anzeige aller PowerShell-Aliase im Web. Denken Sie daran, eine separate Zeile vor “Invoke-Item” zu verwenden.

Get-Alias|ConvertTo-Html|Out-File aliases.htm  
Invoke-Item aliases.htm

Convert-to-HTML-Befehl in PowerShell, um Aliase auf einer Webseite anzuzeigen.

Sobald Sie den HTML-Konvertierungsbefehl ausführen, wird PowerShell Sie auffordern, die Ausgabedatei mit einer anderen Anwendung zu öffnen. Die Verwendung eines Browsers ergibt eine Liste von Objekten, wie z.B. Aliase.

Eine vollständige Liste der in einem Webbrowser anzeigbaren PowerShell-Aliase.

3. Get-Command

Es gibt hauptsächlich zwei Arten von Befehlen: Aliase und Funktionen. PowerShell-Aliasnamen dienen als Spitzname für eine Funktion oder ein Cmdlet. Windows hat einige Aliase standardmäßig gespeichert, die Sie mit Get-Command abrufen können. Sie können auch Ihre eigenen Aliase erstellen.

Liste der Aliase unter Get-Befehl in PowerShell.

Die andere Befehlsart in PowerShell sind Funktionen. Diese verwenden ein genehmigtes Verb (wie “get”) und ein einfaches Substantiv (wie “StorageNode”).

Liste der Funktionen, die unter Get-Befehl in PowerShell angezeigt werden.

Wir verwenden eine “Select-object”-Funktion (beachten Sie die Kombination aus Verb und Substantiv) mit dem, was als Umgebungsvariable für den Computernamen bekannt ist, um den Namen des lokalen Computers anzuzeigen.

$env:computername |Select-Object

Auslesen des Computernamens mithilfe der Select-Object-Funktion und der Umgebungsvariablen in PowerShell.

Funktionen sind der Ausgangspunkt für fortgeschrittenes PowerShell-Coding. Sie können Funktionen wie Start-process mit Parametern und Variablen verwenden, um Ihre eigenen Batch-Skripte zu erstellen, die eine Reihe von Aufgaben ausführen.

4. Get-Help

PowerShell hat sein eigenes selbstlernendes Fehlerbehebungs-Cmdlet, Get-Help, das alle Schnellkorrekturen und Hilfeartikel in einem einzigen Fenster anzeigt. Geben Sie den Befehl am Ende jeder Ausgabe ein, um Hilfe zu verschiedenen Modulen zu erhalten. Möglicherweise müssen Sie Y drücken, um aktualisierte Versionen des Hilfetyps zuzulassen.

PowerShell aktualisiert die Hilfe für verschiedene Module nach dem Get-Help-Befehl.

Es gibt verschiedene Hilfeoptionen über Get-help. Wenn Sie beispielsweise erfahren möchten, was Get-process tut und was seine genaue Syntax ist, geben Sie Folgendes ein:

Get-HelpGet-Process

Verschiedene Beispiele werden im PowerShell-Fenster für den Get-Help-Befehl angezeigt.

Tipp: Machen Sie sich Sorgen über Keylogger, die Ihre Aktivitäten auf Ihrem PC überwachen? Erfahren Sie, wie Sie einen Keylogger unter Windows erkennen.

5. Get-Process

Get-Process ist ein wesentlicher PowerShell-Befehl, der die vollständige Liste der Prozesse auf Ihrem lokalen Gerät oder einem Remote-Computer auflistet.

Get-Process-Befehl in PowerShell listet alle Computerprozesse auf.

Für detailliertere Prozessinformationen müssen Sie andere Parameter angeben, wie Prozess-ID (PID) oder den Namen des Prozesses.

Spezifizierung des Prozessnamens im Get-Process-Befehl in PowerShell.

Es gibt viele spezifische Parameter, die Sie beim Definieren des zu findenden Prozesses angeben können:

  • Prozesse auflisten, indem die Dateigröße in MB angegeben wird
  • Prozesse basierend auf der Priorität auflisten
  • Den Besitzer eines Prozesses finden

6. Get-Service

Ihr Windows-Computer hat viele laufende Programme und Prozesse. Während Sie diese direkt im Task-Manager anzeigen können, ist es einfacher, eine vollständige Liste mithilfe von Get-service anzuzeigen, die Sie später in HTML umwandeln können.

Get-service-Befehl im PowerShell-Fenster mit einer vollständigen Liste von Diensten.

Erinnern Sie sich nicht mehr an den genauen Namen des Dienstes, den Sie benötigen? Sie können ein Wildcard-Symbol (*) zusammen mit den wenigen Buchstaben verwenden, an die Sie sich erinnern können.

Get-service"xyz*"

Get-service mit eingegebenen Anfangsbuchstaben im PowerShell-Fenster.

Einige gängige Flags, die in Verbindung mit Get-Service funktionieren, sind -DisplayName, -DependentServices, -InputObject und -RequiredServices.

7. Install-Module oder Install-Script

PowerShell ist eine der sichersten Optionen zur Installation von Softwarepaketen für Windows-Software, wie Microsoft Teams, McAfee Security, Bing Translator, die neuesten Xbox-Spiele usw. Um eine vollständige Liste der in PowerShell unterstützten Software für alle Benutzer anzuzeigen, geben Sie Folgendes ein:

Get-AppxPackage -AllUsers

Get AppxPackage-Befehl zur Ansicht der gesamten Liste von Paketen in PowerShell.

Ein besserer Weg besteht darin, nach Ihrem gewünschten Paket in der PowerShell Gallery zu suchen, einer einzigen Ressource für die neuesten Softwarepakete. Sobald Sie es gefunden haben, geben Sie einen Befehl wie Install-module, Install-Script oder Install-Package ein. Das Folgende zeigt die Installation des Minesweeper-Spiels.

Install-Script -Name Minesweeper

Installation des Minesweeper-Spiels von PowerShell unter Windows.

Warten Sie einige Sekunden oder Minuten, bis das Paket über PowerShell installiert wird. Es wird später in Windows verfügbar sein.

Installation des Minesweeper-Pakets im Gange.

Ein weiterer nützlicher Befehl ist Find-package, der nach einem Softwarepaket auf Ihrem Computer oder im Web sucht.

Tipp: Sie können auch den Windows Package Manager verwenden, um Programme zu installieren und zu aktualisieren.

8. mkdir, md, rmdir

mkdir ist kein nativer PowerShell-Befehl. Es ist jedoch ein weit verbreiteter Alias von new-item, um Verzeichnisse zu erstellen, da diese Syntax in DOS und Linux sehr populär ist. Wenn Sie mkdir mit einem Namen Ihrer Wahl verwenden, erstellt es einen leeren Ordner.

mkdir "Name Ihres leeren Ordners."

Lassen Sie PowerShell auf Ihren neu erstellten Ordner mit einem einfachen cd-Befehl zeigen.

cd"Name des neu erstellten Ordners."

Erstellen eines neuen Verzeichnisses mit dem mkdir-Befehl in PowerShell und Verweisen auf dieses neue Verzeichnis mit cd.

Der neu erstellte Ordner befindet sich immer im Verzeichnis C:\Windows\System32, aber Sie könnten cd verwenden, um auf ein anderes Verzeichnis zu verweisen.

Neuer Ordner, der mit dem PowerShell-Befehl erstellt wurde, im Datei-Explorer System32 sichtbar.

Sie können mkdir durch md für denselben Zweck ersetzen. Um den Inhalt eines Verzeichnisses zu entfernen, verwenden Sie den Befehl rmdir (entfernen Verzeichnis):

rmdir"Name des Verzeichnisses mit leerem Inhalt."

md- und rmdir-Befehle, die im PowerShell-Fenster verwendet werden, um leere Ordner zu erstellen und zu entfernen.

9. New-Item

Im Gegensatz zu Aliasnamen wie mkdir und md ist New-item das offizielle Cmdlet, das in PowerShell verwendet wird, um neue Elemente zu erstellen und deren Werte festzulegen. Neben der Erstellung von Dateien und Ordnern können Sie es auch verwenden, um Registrierungsschlüssel und -einträge zu erstellen.

  1. Um ein neues Verzeichnis mit dem Befehl New-item zu erstellen, geben Sie ein:
New-item-Path"Verzeichnis-Pfad-Standort\"-Name"Ihren gewünschten Namen"-Item Type"directory"
  1. Sobald ein Verzeichnis erstellt ist, können Sie neue Dateien mit New-item in diesen Ordner einfügen.
New-item-path"Erstellter Verzeichnis-Pfad-Standort\"-Name"Dateiname.txt"-ItemType"file"-Value"fügen Sie jeden gewünschten Text ein."

New-item-Befehl in PowerShell in Verwendung, um neuen Ordner und Datei mit Text zu erstellen.

  1. Die neu erstellte Datei kann in ihrem Zielordner gefunden werden.

Wesentliche PowerShell-Befehle Neuer Artikel im Datei-Explorer

10. Remove-Item

Möchten Sie alle Dateien mit einer Erweiterung wie .TXT, .DOC, .PDF, .WMV aus einem Ordner entfernen? Zeigen Sie zuerst auf den genauen Ordnerpfad mit cd, und verwenden Sie dann das Cmdlet Remove-Item, wie unten gezeigt:

Remove-Item*-Include*(Dateityp)-Exclude *(irgendeine Variable oder Zahl)"

Element aus einem Ordner in PowerShell entfernen.

Die obige Methode ist sehr nützlich, um versteckte oder schreibgeschützte Dateien zu identifizieren und zu entfernen oder um Dateien mit Sonderzeichen zu löschen.

Gut zu wissen: Schwierigkeiten beim Entfernen einer Datei von Ihrem PC? Erfahren Sie, wie Sie unlöschbare Dateien unter Windows zwangsweise löschen.

11. Set-ExecutionPolicy

Aus Sicherheitsgründen hat PowerShell seine eigene Ausführungsrichtlinie, die Konfigurationsdateien, Skripte und andere Parameter betrifft. Diese Sicherheitsfunktion kann mit dem Befehl Set-executionPolicy, zusammen mit einem Flag wie -force, das vorhandene Elemente überschreibt, ausgeführt werden. Es folgt die unten stehende Syntax.

Set-ExecutionPolicy  
[-ExecutionPolicy]  
[[-Scope]]  
[-Force]  
[-WhatIf]  
[-Confirm]
[]

Zum Beispiel sieht der Befehl Set-ExecutionPolicy, um die Chocolatey-Software zu installieren, wie der folgende Code aus. Nach Ausführung wird die offizielle Chocolatey-Software auf Ihrem Computer heruntergeladen und installiert.

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol =[System.Net.ServicePointManager]::SecurityProtocol -bor3072; iex((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

Installation von Chocolatey in PowerShell mit dem Set-ExecutionPolicy-Befehl.

12. Select-Object und Sort-Object

Wenn Ihr Ordner oder Unterordner viele Dateien und Erweiterungen hat, möchten Sie diese möglicherweise in aufsteigender oder absteigender Reihenfolge basierend auf einer vordefinierten Eigenschaft sortieren oder auswählen. Hierbei können die Cmdlets Sort-Object und Select-Object Ihnen helfen, mehrere Objekte auf einmal neu anzuordnen.

Die Sortierung und Auswahl kann auf beliebige Dateien in verschiedenen Ordnern sowie auf die vorhandenen Prozesse auf Ihrem Computer angewendet werden. Unten ist ein Beispiel zur Sortierung und Auswahl der zehn wichtigsten Prozesse basierend auf der Arbeitssatzgröße (WS) in Megabyte.

Get-process|Sort-Object-Property WS |Select-Object- Last "Anzahl der Elemente"

Auswählen und Sortieren von Objekten basierend auf dem vordefinierten Get-Process in PowerShell.

Sie können die Sortierung und Auswahl auf verschiedene andere Parameter anwenden, wie historische Informationen verschiedener Dateien, die Sortierung aller Listenelemente, die in einer Notepad-Datei enthalten sind, und die Sortierung verschiedener Ereignisse auf Ihrem Computer.

13. Start- und Stop-Process

Egal, ob Sie einen neuen Prozess unter Windows starten oder einen bestehenden Prozess stoppen möchten, Sie können PowerShell-Cmdlets schnell verwenden, um dieses Ziel zu erreichen.

Um einen Prozess schnell zu beenden, verwenden Sie das Cmdlet Stop-Process. Das folgende Beispiel zeigt, wie Sie einen Prozess für WordPad schließen.

Stop-process-Name"Prozess- oder Anwendungsname"

Stoppen des WordPad-Prozesses aus PowerShell in Windows.

Gleichzeitig, um eine neue Anwendung direkt aus dem PowerShell-Fenster zu starten, geben Sie das Cmdlet Start-process und das Flag -FilePath ein.

Start-Process -FilePath"Anwendungsname"

Startprozess in PowerShell zum Öffnen der WordPad-Anwendung.

Tipp: Erfahren Sie, wie Sie Hintergrundanwendungen und -prozesse unter Windows stoppen, um Ihre Ressourcen zu schonen.

14. Suspend- und Resume-Service

Anstatt einen laufenden Dienst zu starten oder zu stoppen, können Sie ihn direkt aussetzen. Der Befehl Suspend-service ist einfach zu verwenden und hilft Ihnen, den RAM- und CPU-Verbrauch von Diensten zu reduzieren, die Sie derzeit nicht verwenden.

Hinweis: Sie können Get-service verwenden, um den Namen des Dienstes, der ausgesetzt werden soll, zu erhalten.

Suspend-service-DisplayName"Vollständiger Dienstname"

Wesentliche PowerShell-Befehle Suspend Service

Ein beendeter Dienst kann später mit einem einfachen Resume-service-Befehl fortgesetzt werden. Wenn Sie sich nicht sicher sind, welche Dienste Sie aussetzen können, ohne Ihr System negativ zu beeinflussen, verwenden Sie den folgenden Befehl:

Get-Service|Where-Object{$_.CanPauseAndContinue -eq"True"}|Suspend-Service-Confirm

Dienste aussetzen, die in PowerShell ausgesetzt werden können.

15. Test-Path

Wenn Sie Pfadfehler in Ihrer Programmierung vermeiden möchten, müssen Sie sicherstellen, dass der Dateipfad in der Syntax korrekt ist. Während Sie dies immer mit dem Datei-Explorer überprüfen können, ist eine genauere Möglichkeit zur Bestätigung die Verwendung des Cmdlets Test-path, das einfach mit „Wahr“ oder „Falsch“ beantwortet, ob ein gegebener Pfad existiert.

Test-Path-Path"Pfadname"

Wesentliche PowerShell-Befehle Testpath

Sie können den Befehl ändern, um die Verfügbarkeit einer bestimmten Datei zu testen, zu überprüfen, ob der Registrierungs-Pfad korrekt ist, und zu bestimmen, ob es weitere Dateien neben einem bestimmten Dateityp auf Ihrem Computer gibt.

16. Wait-Process

Wenn mehrere Prozesse parallel laufen, möchten Sie möglicherweise warten, bis einer oder mehrere von ihnen gestoppt sind, bevor sie wieder verwendet werden können. Der Befehl Wait-Process kann dabei sehr hilfreich sein. Sie können ein Timeout angeben, für das PowerShell wartet, bevor der Prozess gestoppt wird.

Wait-Process -Name"Prozessname" -Timeout (in Sekunden)

Wesentliche PowerShell-Befehle Wait Process

Weitere wesentliche PowerShell-Befehle

Neben den oben aufgeführten PowerShell-Befehlen ist es auch hilfreich, die folgenden Cmdlets und Funktionen zu lernen:

  • Echo ist ein Cmdlet, das verwendet wird, um einen beliebigen Wert auf der PowerShell-Konsole auszugeben
  • Get-Host gibt vollständige Details über das Programm, das PowerShell in Windows hostet
  • Test-JSON ist ein erweitertes Cmdlet, das verwendet wird, um zu testen, ob eine Zeichenfolge ein gültiges JSON-Objekt ist
  • Trace-command verfolgt den gesamten Ausdruck oder Befehl, um die Parameter und Flags zu finden, die er enthält
  • Write-output, wie der Name schon sagt, gibt eine Ausgabe des letzten Befehls im Konsolenfenster.

Tipp: Machen Sie sich mit diesen legitimen Windows-Prozessen vertraut, die wie Malware aussehen können, um zu vermeiden, dass Sie sie von Ihrem System entfernen.

Häufig gestellte Fragen

Wie kann ich den Fehler “PowerShell-Skript wird nicht als Name eines Cmdlets erkannt” beheben?

Wenn PowerShell den Namen eines Cmdlets nicht erkennt, könnte es daran liegen, dass die Pfadvariable nicht korrekt gesetzt ist. Beheben Sie jeden Pfadvariabelfehler, indem Sie seinen ungültigen Ordnerpfad korrigieren.

Wie fange ich Fehlerausgaben in einer Variable in PowerShell ab?

PowerShell hat einen Fehlervariablenparameter, $ErrorVariable, der dazu dient, alle Fehlerausgaben zu erfassen, wenn Sie die verschiedenen Cmdlets eingeben. Diese können zur Fehlerbehebung verwendet werden.