16 wichtige PowerShell-Befehle, die Sie kennen sollten
Windows PowerShell ist eine leistungsstarke App, die auf der . NET-Framework. Es stützt sich auf PowerShell-Befehle namens Cmdlets. Indem Sie sie in einer bestimmten Reihenfolge kombinieren, können Sie fast jeden Vorgang im PowerShell-Fenster ausführen. Um zu erklären, wie es funktioniert, haben wir die wichtigsten PowerShell-Befehle in die engere Wahl gezogen.
So verwenden Sie PowerShell-Befehle
Um mit der Verwendung von Cmdlets zu beginnen, müssen Sie PowerShell im Administratormodus über das Suchmenü starten.
Wesentliche PowerShell-Befehle
PowerShell in Windows ist nicht nur eine aktive Befehlszeilenschnittstelle, sondern auch ein Skript- und Programmierfenster, das jede gewünschte Anwendung oder jeden gewünschten Prozess ausführen kann. Obwohl es mehrere hundert Cmdlets gibt, müssen Sie für den Anfang nur die wichtigsten lernen.
1. Clear-Host oder Cls
Ist Ihnen beim Tippen ein Fehler unterlaufen oder läuft etwas nicht wie geplant? Glücklicherweise gibt es in PowerShell einige Wiederholungen. Der praktische clear-host
Befehl 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.
Sie können auch den einfacheren cls
Befehl, der häufig in der Eingabeaufforderung verwendet wird, mit PowerShell verwenden. Diese beiden Klartextbefehle sind praktisch, wenn Sie auf eine Fehlermeldung stoßen.
Um Tippfehler in der Eingabeaufforderung oder im PowerShell-Fenster zu vermeiden, kopieren Sie die Befehle und fügen Sie sie ein, um die Wirksamkeit zu verbessern.
2. In HTML konvertieren
Eine große HTML-Zeichenfolge ist ästhetischer als ein Blick auf die überladenen 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. Verwenden Sie das Cmdlet, um sie in einem vollständigen Browserfenster anzuzeigen Convert-to-HTML
. Nachfolgend finden Sie ein Beispiel für die Anzeige aller PowerShell-Aliase im Web. Denken Sie daran, vor „Invoke-Item“ eine separate Zeile zu verwenden.
Get-Alias | ConvertTo-Html | Out-File aliases.htm
Invoke-Item aliases.htm
Sobald Sie den HTML-Konvertierungsbefehl ausführen, werden Sie von PowerShell aufgefordert, die Ausgabedatei mit einer anderen Anwendung zu öffnen. Die Verwendung eines Browsers erzeugt eine Liste von Objekten, wie z. B. Aliase.
3. Get-Befehl
Es gibt hauptsächlich zwei Arten von Befehlen: Aliase und Funktionen. PowerShell-Aliase dienen als Kurzname für eine Funktion oder ein Cmdlet. Windows hat standardmäßig ein paar Aliase gespeichert, die Sie mit abrufen können Get-Command
. Sie können auch eigene Aliase erstellen.
Der andere Befehlstyp in PowerShell sind Funktionen. Diese verwenden ein zugelassenes Verb (z. B. „get“) und ein einfaches Substantiv (z. B. „StorageNode“).
Wir verwenden eine „Objekt auswählen“-Funktion (beachten Sie die Kombination aus Verb und Substantiv) mit einer sogenannten Umgebungsvariable für den Computernamen, um den Namen des lokalen Computers anzuzeigen.
$env:computername | Select-Object
Funktionen sind der Ausgangspunkt der erweiterten PowerShell-Codierung. Sie können Funktionen wie z. B. Start-process
mit Parametern und Variablen verwenden, um Ihre eigenen Stapelskripts zu erstellen und eine Reihe von Aufgaben auszuführen.
4. Holen Sie sich Hilfe
PowerShell verfügt über ein eigenes selbstlernendes Cmdlet zur Fehlerbehebung, 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 drücken, Yum aktualisierte Versionen des Hilfeinhalts zuzulassen.
Es gibt verschiedene Hilfemöglichkeiten über Get-help
. Wenn Sie beispielsweise erfahren möchten, was Get-process
tut und wie seine genaue Syntax lautet, geben Sie Folgendes ein:
Get-Help Get-Process
5. Get-Prozess
Get-Process
ist ein wesentlicher PowerShell-Befehl, der die vollständige Liste der Prozesse auf Ihrem lokalen Gerät oder einem Remotecomputer tabelliert.
Für detailliertere Prozessinformationen müssen Sie weitere Parameter wie Prozess-ID (PID) oder den Namen des Prozesses angeben.
Es gibt viele spezifische Parameter, die Sie beim Definieren des zu findenden Prozesses einbeziehen können:
- Listen Sie Prozesse auf, indem Sie die Dateigröße in MB angeben
- Prozesse nach Priorität auflisten
- Finden Sie den Eigentümer eines Prozesses
6. Get-Service
Auf Ihrem Windows-Computer laufen viele Programme und Prozesse. Während Sie sie direkt im Task-Manager anzeigen können, ist es einfacher, eine vollständige Liste mit anzuzeigen Get-service
, die Sie später in HTML konvertieren können.
Erinnern Sie sich nicht an den genauen Namen des Dienstes, den Sie benötigen? Sie können ein Platzhaltersymbol (*) zusammen mit den wenigen Buchstaben verwenden, an die Sie sich erinnern können.
Get-service "xyz*"
Einige gebräuchliche Flags, die in Verbindung mit Get-Service
, -DisplayName
, -DependentServices
, -InputObject
und funktionieren -RequiredServices
.
7. Install-Modul oder Install-Skript
PowerShell ist eine der sichersten Optionen zum Installieren von Softwarepaketen für Windows-Software wie Microsoft Teams, McAfee Security, Bing Translator, die neuesten Xbox-Spiele usw. Geben Sie Folgendes ein, um eine vollständige Liste der in PowerShell für alle Benutzer unterstützten Software zu erhalten:
Get-AppxPackage -AllUsers
Eine bessere Möglichkeit besteht darin, in der PowerShell-Galerie nach Ihrem gewünschten Paket zu suchen , einer zentralen Ressource für die neuesten Softwarepakete. Sobald Sie es gefunden haben, geben Sie einen Befehl ein, z. B. Install-module
, Install-Script
, oder Install-Package
. Das Folgende zeigt die Installation des Minesweeper-Spiels.
Install-Script -Name Minesweeper
Warten Sie einige Sekunden oder Minuten, bis das Paket über Ihre PowerShell installiert wurde. Es wird später in Windows verfügbar sein.
Ein weiterer nützlicher Befehl ist Find-package
, der auf Ihrem Computer oder im Web nach einem Softwarepaket sucht.
8. mkdir, md, rmdir
mkdir
ist kein nativer PowerShell-Befehl. Es ist jedoch ein weit verbreiteter Alias für new-item
das Erstellen von Verzeichnissen, da diese Syntax unter DOS und Linux sehr beliebt ist. Wenn Sie mkdir
einen Namen Ihrer Wahl verwenden, wird ein leerer Ordner erstellt.
mkdir "name of your empty folder."
Lassen Sie PowerShell mit einem einfachen Befehl auf Ihren neu erstellten Ordner verweisen cd
.
cd "name of the newly created folder."
Der neu erstellte Ordner befindet sich immer entlang des Pfads C:\Windows\System32
, aber Sie könnten verwenden cd
, um auf einen anderen Ordner zu verweisen.
Sie können für den gleichen Zweck wie oben mkdir
durch ersetzen. md
Verwenden Sie zum Entfernen von Verzeichnisinhalten den rmdir
Befehl (Verzeichnis entfernen):
rmdir "name of the folder with empty content."
9. Neu-Artikel
Anders als Aliase wie mkdir
und ist das offizielle Cmdlet, das in PowerShell verwendet wird, um neue Elemente zu erstellen und ihre Werte festzulegen md
. New-item
Zusätzlich zum Erstellen von Dateien und Ordnern können Sie damit Registrierungsschlüssel und -einträge erstellen.
- Um ein neues Verzeichnis mit dem
New-item
Befehl zu erstellen, geben Sie Folgendes ein:
New-item -Path "Directory path location\"-Name "Name of your choice"-Item Type "directory"
- Sobald ein Verzeichnis erstellt ist, können Sie neue Dateien
New-item
in diesem Ordner ablegen.
New-item -path "Created directory path location\"-Name "File name.txt"-ItemType "file"-Value "insert any text of your choice."
- Die neu erstellte Datei befindet sich in ihrem Zielordner.
10. Item entfernen
Möchten Sie alle Dateien mit einer Erweiterung entfernen, z. TXT,. DOC,. Pdf,. WMV, aus einem Ordner? Zeigen Sie zuerst mit auf den genauen Ordnerpfad cd
und verwenden Sie dann das Cmdlet Remove-Item
wie unten gezeigt:
Remove-Item * -Include *(filetype) - Exclude *(any variable or number)"
Die obige Methode ist sehr nützlich, um versteckte oder schreibgeschützte Dateien zu identifizieren und zu entfernen oder Dateien mit Sonderzeichen zu löschen.
11. Set-ExecutionPolicy
Aus Sicherheitsgründen verfügt PowerShell über eine eigene Ausführungsrichtlinie, die sich auf Konfigurationsdateien, Skripts und andere Parameter auswirkt. Diese Sicherheitsfunktion kann mit dem Set-executionPolicy
Befehl ausgeführt werden, zusammen mit einem Flag, wie z. B. -force
, das vorhandene Elemente überschreibt. Es folgt der unten angegebenen Syntax.
Set-ExecutionPolicy<br>[-ExecutionPolicy]<br>[[-Scope] ]<br>[-Force]<br>[-WhatIf]<br>[-Confirm]<br>[]
Die Verwendung des Befehls zum Installieren der Chocolatey-Software sieht beispielsweise Set-ExecutionPolicy
wie der unten gezeigte Code aus. Nach der Ausführung wird die offizielle Chocolatey-Software heruntergeladen und auf Ihrem Computer installiert.
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
12. Select-Object und Sort-Object
Wenn Ihr Ordner oder Unterordner viele Dateien und Erweiterungen enthält, möchten Sie diese möglicherweise basierend auf einer vordefinierten Eigenschaft in aufsteigender oder absteigender Reihenfolge sortieren oder auswählen. Hier können die Cmdlets Sort-Object
und Select-Object
Ihnen dabei 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. Nachfolgend finden Sie ein Beispiel für das Sortieren und Auswählen der zehn wichtigsten Prozesse basierend auf der Größe des Arbeitssatzes (WS) in Megabyte.
Get-process | Sort-Object -Property WS | Select-Object - Last "Number of items"
Sie können das Sortieren und Auswählen für verschiedene andere Parameter verwenden, wie z. B. historische Informationen verschiedener Dateien, das Sortieren aller in einer Notepad-Datei enthaltenen Listenelemente und das Sortieren verschiedener Ereignisse auf Ihrem Computer.
13. Start- und Stop-Vorgang
Unabhängig davon, ob Sie einen neuen Prozess in Windows starten oder einen vorhandenen Prozess beenden möchten, können Sie dieses Ziel schnell mit PowerShell-Cmdlets erreichen.
Um einen Prozess schnell zu beenden, verwenden Sie das Stop-Process
Cmdlet. Das folgende Beispiel zeigt, wie ein Prozess für WordPad geschlossen wird.
Stop-process -Name "Process or Application name"
Um eine neue Anwendung direkt aus dem PowerShell-Fenster zu starten, geben Sie entsprechend das Start-process
Cmdlet und -FilePath
das Flag ein.
Start-Process -FilePath "Application name"
14. Suspend- und Resume-Service
Anstatt einen laufenden Dienst zu starten oder zu stoppen, können Sie ihn direkt anhalten. Das Suspend-service
Cmdlet ist einfach zu verwenden und hilft Ihnen, die RAM- und CPU-Auslastung von Diensten zu reduzieren, die Sie derzeit nicht verwenden.
Suspend-service -DisplayName "Service full name"
Jeder beendete Dienst kann später mit einem einfachen Resume-service
Befehl wieder aufgenommen werden. Wenn Sie sich nicht sicher sind, welche Dienste Sie anhalten können, ohne Ihr System negativ zu beeinflussen, verwenden Sie den folgenden Befehl:
Get-Service | Where-Object {$_.CanPauseAndContinue -eq "True"} | Suspend-Service -Confirm
15. Testpfad
Wenn Sie Dateipfadfehler in Ihrer Programmierung vermeiden möchten, müssen Sie sicherstellen, dass der Dateipfad in der Syntax korrekt ist. Sie können dies zwar immer mit dem Datei-Explorer überprüfen, eine genauere Methode zur Bestätigung ist jedoch die Verwendung des Test-path
Cmdlets, das einfach mit „Wahr“ oder „Falsch“ antwortet, ob ein bestimmter Pfad vorhanden ist.
Test-Path -Path "Path name"
Sie können den Befehl ändern, um die Verfügbarkeit einer bestimmten Datei zu testen, zu prüfen, ob der Registrierungspfad korrekt ist, und festzustellen, ob neben einem bestimmten Dateityp noch andere Dateien auf Ihrem Computer vorhanden sind.
16. Wait-Prozess
Wenn mehrere Prozesse gleichzeitig ausgeführt werden, möchten Sie möglicherweise warten, bis einer oder mehrere von ihnen gestoppt werden, bevor sie wieder verwendet werden können. Das Wait-Process
Cmdlet kann sehr hilfreich sein. Sie können ein Timeout angeben, auf das PowerShell wartet, bevor der Prozess beendet wird.
Wait-Process -Name "Process name, -Timeout (in seconds)
Andere wichtige PowerShell-Befehle
Abgesehen von den oben aufgeführten PowerShell-Befehlen ist es auch hilfreich, die folgenden Cmdlets und Funktionen zu lernen:
-
Echo
ist ein Cmdlet, das zum Drucken beliebiger Werte in der PowerShell-Konsole verwendet wird -
Get-Host
enthält alle Details des Programms, das PowerShell in Windows hostet -
Test-JSON
ist ein erweitertes Cmdlet zum Testen, ob eine Zeichenfolge ein gültiges JSO-Objekt ist -
Trace-command
verfolgt den gesamten Ausdruck oder Befehl, um die darin enthaltenen Parameter und Flags zu finden -
Write-output
, gibt, wie der Name schon sagt, eine Ausgabe des letzten Befehls im Konsolenfenster aus.
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, kann dies daran liegen, dass die Path-Variable nicht richtig festgelegt ist. Beheben Sie alle Pfadvariablenfehler, indem Sie den ungültigen Ordnerpfad korrigieren.
Wie erfasse ich die Fehlerausgabe als Variable in PowerShell?
PowerShell verfügt über einen Fehlervariablenparameter, $ErrorVariable
der dazu dient, alle Fehlerausgaben zu erfassen, wenn Sie die verschiedenen Cmdlets eingeben. Diese können zur Fehlersuche verwendet werden.
Bildnachweis: DepositPhotos . Alle Screenshots von Sayak Boral .
- Twittern
Schreibe einen Kommentar