PowerShell ist ein Tool mit einer auf einer Konsole basierenden Befehlsschnittstelle, die es uns ermöglicht, über diese Befehle mit unserem System zu kommunizieren. Wie der Name schon sagt, handelt es sich um eine Shell, die die Kommunikation zwischen dem PC und dem Benutzer ermöglicht und uns eine Interaktionsschnittstelle bietet. Die Nutzung erfolgt naturgemäß grundsätzlich über die Tastatur und die Texteingabe. Windows PowerShell wurde als leistungsstärkere und weniger restriktive Lösung entwickelt als andere Shells, wie z. B. die Eingabeaufforderung.
Als Administratoren ist es sehr nützlich, sowohl die Eingabeaufforderung als auch die Windows PowerShell zu kennen, um jedes interne Element anzupassen. Einer der Vorteile von PowerShell besteht darin, dass wir Prozesse und Aufgaben automatisieren und so die Aufgaben, die wir ausführen möchten, erleichtern können. Mit den nützlichen PowerShell-Skripten oder -Befehlen, die in PowerShell am häufigsten verwendet werden, können wir Windows 10-Aufgaben einfach und mit vollen Administratorrechten ausführen.
Unterschiede zwischen PowerShell und CMDDer Hauptunterschied zwischen der Eingabeaufforderung und PowerShell besteht darin, dass letztere alles in cmd ausführen kann und auch komplexere Aufgaben, die ihre Möglichkeiten erheblich erweitern.
Mit Windows Powershell können wir auf grundlegende cmd-Elemente sowie auf andere komplexere interne Aspekte unserer Computer zugreifen. WPowerShell verhält sich auch als leistungsstarke Skriptverwaltungsumgebung, die unsere Aufgaben vereinfacht. Es hat auch die Möglichkeit der Fernsteuerungsausführung. Aufgrund seiner Komplexität ist es normal, PowerShell für ein professionelleres Publikum und cmd für ein Standardpublikum zu behandeln.
Als Nächstes sehen wir eine Liste von Befehlen, die bei der Arbeit mit PowerShell nützlich sind. Wir empfehlen auch das Video-Tutorial zum Öffnen von Windows PoerShell:
1. Häufig verwendete Befehle in PowerShell
1. Durchsuchen Sie die Windows-Registrierung, als ob es ein Verzeichnis von Dateien wäre
Es ist eine Funktion, die nicht viele standardmäßig kennen, und das heißt, dass Sie mit dem PS durch die Windows-Registrierungen navigieren können.
PS C: \ Benutzer \ jcarrillo> cd hkcu: PS HKCU: \> ls
Hive: HKEY_CURRENT_USER SKC VC Name Eigenschaft --- - ---- -------- 2 0 AppEvents {} 0 36 Konsole {ColorTable00, ColorTable01, ColorTab… 13 0 Systemsteuerung {} 0 2 Umgebung {TEMP , TMP} 4 0 EUDC {} 1 6 Identitäten {Identität Ordinal, Migriert7, Last Us… 3 0 Tastaturlayout {} 2 0 Layout {} 0 0 Netzwerk {} 3 0 Drucker {} 37 0 Software {} 1 0 System { } 1 8 Flüchtige Umgebung {LOGONSERVER, USERDOMAIN, USERNAME, U…
2. Suche zwischen Dateien einschließlich Unterordnern
Wir können eine Suche in Powershell durchführen und das gilt für alle Unterverzeichnisse, die von existieren, und wenn wir das Root durchsuchen, wird die gesamte Partition durchsucht.
dir -r | wähle die Zeichenfolge "quebuscar"
3. TOP 5 Prozesse mit dem meisten Verbrauch
Wir können sehen, welche Prozesse den meisten Speicher im System verbrauchen.
-ps | sortieren -p ws | auswählen -letzte 5
4. Dienst neu starten
Wir können einen Dienst stoppen und dann wieder starten sehr nützlich.
- Neustart-Dienst DHCP
5. Verzeichniselemente auflisten
Wir listen alle Elemente in einem Verzeichnis auf:
- Get-ChildItem - Force
6. Durchsuchen Sie mehrere Websites gleichzeitig
Wir suchen in einer Reihe von Verzeichnissen oder Ordnern:
- Get-ChildItem -Force c: \ Verzeichnis -Recurse
7. Löschen Sie PowerShell-Dateien
Löschen Sie alle Dateien mit der Powershell in einem Verzeichnis, ohne in jeder von ihnen um Bestätigung zu bitten.
Remove-Item C: \ tobedeleted -Recurse
8. Starten Sie die Maschine neuBefehl zum direkten Neustart des Computers mit Powershell.
(Get-WmiObject -Class Win32_OperatingSystem -ComputerName.) Win32Shutdown (2)
Jetzt gehen wir zum Sammeln von Systeminformationen mit PowerShell über.
2. Systeminformationen zu PowerShell-Befehlen
9. Hardware-Informationen
Ruft die Informationen des verwendeten Systems ab.
Get-WmiObject -Klasse Win32_ComputerSystem
10. BIOS-Informationen
Listen Sie den Typ des verwendeten System-BIOS mit dem folgenden Befehl auf:
Get-WmiObject -Klasse Win32_BIOS -ComputerName
11 Systemaktualisierungen
Listen Sie alle auf dem System installierten Windows-Updates auf, einschließlich QFES- oder Windows Update-Dateien.
Get-WmiObject -Class Win32_QuickFixEngineering -ComputerName.
12. Online-Benutzer
Zeigt den Benutzer an, der am System angemeldet ist.
Get-WmiObject -Class Win32_ComputerSystem -Property UserName -ComputerName
13. Installierte Anwendungen
Zeigen Sie eine Liste mit allen installierten Anwendungen mit nur dem Namen ohne Beschreibung an:
Get-WmiObject -Class Win32_Product -ComputerName. | Formatweit -Spalte 1
14. IP anzeigen
Es zeigt alle IPs an, die der physischen oder virtuellen Maschine zugeordnet sind.
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled = TRUE -ComputerName. | Format-Tabelle -Eigenschaft IPAddress
15. Weitere Informationen zum Netzwerk
Wir erhalten weitere Informationen wie die zugehörige Schnittstelle und DNS.
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled = TRUE -ComputerName. | Select-Object -Property [a-z] * -ExcludeProperty IPX *, WINS *
16. NIC mit DHCP
Zeigt die in DHCP konfigurierten Netzwerkschnittstellen an, die aktiviert sind.
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter "DHCPEnabled = true" -ComputerName
17. Schnittstellen in DHCP aktivieren
Es aktiviert die Schnittstellen, die in DHCP im System mit Powershell sind.
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled = true -ComputerName. | ForEach-Object -Process {$_.EnableDHCP()}
Kommen wir nun zur Bewerbungsverwaltung, einem sehr interessanten und gefragten Thema.
3. PowerShell-Anwendungsverwaltung
18. Pakete aus der Ferne installieren
Installieren Sie ein MSI-Paket auf einem Remote-Computer.
(Get-WMIObject -ComputerName TARGETMACHINE -List | Where-Object -FilterScript {$_. Name -eq "Win32_Product"}) Installieren (\ MACHINEWHEREMSIRESIDES \ path \ package.msi)
19. Aktualisieren Sie ein Paket aus der Ferne
Wir aktualisieren ein MSI-Paket auf einem Remote-Computer.
(Get-WmiObject -Class Win32_Product -ComputerName. -Filter "Name = 'name_of_app_to_be_upgraded'"). Upgrade (\ MACHINEWHEREMSIRESIDES \ path \ upgrade_package.msi)
20. Entfernen Sie ein MSI-Paket
Wir entfernen / löschen ein Paket mit einer MSI-Erweiterung von der verwendeten Maschine.
(Get-WmiObject -Class Win32_Product -Filter "Name = 'product_to_remove'" -ComputerName.) .Uninstall ()
21. Fernabschaltung
Wir können sogar einen Remote-Computer mit diesem Befehl herunterfahren:
Start-Schlaf 60; Neustart-Computer -Force -ComputerName TARGETMACHINE
22. Drucker hinzufügen
Fügen Sie unserem Computer einen Drucker hinzu, aber zuerst muss dieser durch die Installation der erforderlichen Treiber erkannt werden.
(New-Object -ComObject WScript.Network) .AddWindowsPrinterConnection ("\ printerserver \ hplaser3")
23. Drucker mit PowerShell löschen
Löschen / Entfernen eines Druckers von unserem Computer Es ist wichtig zu wissen, dass die Treiber nicht deinstalliert werden.
Drucker entfernen - (New-Object -ComObject WScript.Network) .RemovePrinterConnection ("\ printerserver \ hplaser3")
24. Geben Sie eine Remote-PowerShell ein
Wir können eine PowerShell eines Remote-Computers eingeben, aber zuerst müssen wir die Remote-Verwaltung aktiviert haben.
enter-pssession ZIELMASCHINE
25. Skript aus der Ferne ausführen
Endlich können wir ein Skript auf einem entfernten Computer aufrufen und es ist eines der interessantesten.
invoke-command -computername machine1, machine2 -filepath c:\script\script.ps1
4. PowerShell-Dateien verwalten
26.Liste der Befehle nach einem ParameterIn die Sternchen setzen wir den Parameter, mit dem wir die Ergebnisse filtern möchten. In diesem Fall sehen wir alle Befehle, die -service enthalten.
Get-Command * Parameter * Get-Command * -service *
27. Führen Sie ein Skript ausMit diesem Befehl können wir ein Skript aus PowerShell ausführen und sogar eine Funktion über eine Variable starten. Sie können einen Ausdruck angeben. Sie müssen den Befehl und dann den Befehl oder Ausdruck einschließen.
Invoke-Expression-Ausdruck Invoke-Expression c: \ scripts \ analysis.ps1
28. Sicherheitsstufe ändernInnerhalb von Powershell gibt es bestimmte Sicherheitsbeschränkungen, die bestimmte Aktionen einschränken, obwohl wir bestimmte Aufgaben wie das Arbeiten mit Skripten ausführen können. Um die Sicherheitsstufe zu ändern, verwenden wir den folgenden Befehl, der von den 4 möglichen Stufen begleitet werden muss: Eingeschränkt, Remote Signed, All Signed oder Unrestricted
Set-ExecutionPolicy -ExecutionPolicy Restricted
29. Informationen an einem Ort findenMit dem folgenden Befehl können wir bestimmte Informationen in einem bestimmten Pfad wie einer Datei abrufen. Wir werden den Befehl zusammen mit dem Pfad oder String und den Parametern schreiben. Wenn wir möchten, dass die Elemente, die mit P beginnen, in das aktuelle Verzeichnis geworfen werden, verwenden wir Folgendes:
Get-Item P *
30. Dateien und Verzeichnisse kopierenMit dem folgenden Befehl können wir Elemente auf Ihrer Festplatte und sogar Registrierungsschlüssel kopieren, ähnlich dem CMD cp-Befehl. Derselbe Befehl kann verwendet werden, um den Namen der Dateien gleichzeitig zu kopieren und zu ändern. Lassen Sie uns mit dem Befehl copy-item kopieren und in einen Test umbenennen
Copy-Item "probando.jpg.webp" -Ziel "C:\Varios\probando2.jpg.webp"
31. Dateiinhalt anzeigenSie können mit dem folgenden Befehl het-content sehen, was eine Texterweiterungsdatei enthält, ohne sie mit einem Programm öffnen zu müssen, sondern von Powershell selbst aus. Mit dem Parameter -TotalCount teilen wir ihm die Anzahl der Zeilen mit, die wir anzeigen möchten, in diesem Fall 25.
Get-Content "C:\Benutzer\Solvetic\Desktop\texttest.txt" -TotalCount 25
5. PowerShell-Benutzer anzeigen
32. Benutzerinformationen anzeigenMit diesem Befehl können wir Informationen zu den Benutzern in unserem System auflisten:
Get-LocalUser
33. Spezifische BenutzerinformationenUm die Informationen über einen Benutzer auf grundlegende Weise anzuzeigen, verwenden wir Folgendes:
Get-LocalUser -Name des Benutzernamens
34. Vollständige BenutzerinformationenWenn wir alle Informationen über einen Benutzer benötigen, verwenden wir den folgenden Befehl:
Get-LocalUser -Name Benutzername | fl
6. PowerShell-Gruppen anzeigen
So zeigen Sie Befehle zum Anzeigen von Informationen zu Gruppen mithilfe von PowerShell-Befehlen an.
35. Powershell-Gruppen anzeigenUm alle Gruppen innerhalb des Systems zu sehen, verwenden wir:
Get-LocalGroup
36. Spezifische GruppeninformationenWenn wir nur Informationen über eine bestimmte Gruppe wünschen, verwenden wir:
Get-LocalGroup -Name Gruppenname
37. Vollständige GruppeninformationenWenn wir vollständigere Informationen über eine Gruppe wünschen, verwenden wir:
Get-LocalGroup -Name Gruppenname | fl
7. PowerShell-Festplatten anzeigen
Um Befehle zum Anzeigen von Informationen zu Datenträgern mithilfe von PowerShell-Befehlen anzuzeigen, haben wir diese Beispiele:
38. Powershell-Discs anzeigenUm alle Festplatten im System anzuzeigen, verwenden wir:
Get-Disk
39. Spezifische FestplatteninformationenWenn wir nur Informationen über eine bestimmte Festplatte benötigen, verwenden wir:
Get-Disk -Number disk_number | fl
40. Vollständige Disc-InformationenWenn wir vollständigere Informationen über eine Systemfestplatte wünschen, verwenden wir:
Get-Partition -DiskNumber disk_number
Es wurden Windows 10 PowerShell-Befehle aufgelistet, die viele Aufgaben als Administrator von Aufgaben wie dem Durchsuchen eines Verzeichnisses bis hin zu etwas komplizierteren wie dem Aktivieren einer Netzwerkkarte mit DHCP erleichtern können. Es ist eine Liste von Befehlen, die im Allgemeinen in Aufgaben verwendet werden können. Wenn Sie Vorschläge oder andere interessante Befehle haben, zögern Sie nicht, diese in den Kommentaren zu hinterlassen.