Was ist PowerShell? Windows PowerShell – was ist das, Funktionen und Anforderungen Beschreibung von PowerShell

Nach der Umstellung auf das Betriebssystem Windows 10 fiel vielen Nutzern die Schaltfläche „PowerShell ausführen“ in der Explorer-Oberfläche auf. Diesbezüglich tauchten im Internet viele Fragen auf, Nutzer interessierten sich dafür, um was für ein Windows PowerShell-Programm es sich handelte und wofür es benötigt wurde. Wenn Sie diese Frage auch interessiert, dann dieses Material sollte dir helfen.

Windows PowerShell ist eine Skriptsprache und ein Programm mit einer Schnittstelle Befehlszeile um diese Skripte auszuführen. Diese Sprache wurde 2006 als Teil des zweiten Service Packs für Windows XP veröffentlicht und seitdem ist PowerShell Bestandteil aller Microsoft-Betriebssysteme. Im Jahr 2008 erschien eine zweite Version dieser Sprache, und ab Windows 7 wird dies verwendet. Dateien mit Windows PowerShell-Skripten haben die Erweiterung PS1 und können als bekannte BAT- und CMD-Dateien ausgeführt werden.

Windows PowerShell ist eine Skriptsprache, die in erster Linie für Microsoft-Geschäftskunden entwickelt wurde leistungsstarke Werkzeuge um Aufgaben zur Verwaltung von Servern und Computern zu automatisieren Windows-basiert. Als Basis für diese Sprache diente die von Microsoft seit 2002 entwickelte .NET-Plattform.

Mit Windows PowerShell können Sie eine Vielzahl von Aufgaben automatisieren. Damit können Sie Dateien, Dienste, Prozesse, Konten und Einstellungen verwalten. Die PowerShell-Sprache versteht viele Befehle der regulären Command Shell Windows-Strings(CMD), verfügt aber auch über eine eigene Sprache, die aus eigenen Befehlen besteht, die hier Cmdlets genannt werden.

Cmdlets (auf Englisch Cmdlets) werden gemäß der Verb-Noun-Regel gebildet, zum Beispiel Get-Help. Mithilfe der Hilfe (dem Cmdlet „Get-Help“) können Sie die Grundlagen von Windows PowerShell erlernen. Zum Erhalten allgemeine Informationen Geben Sie einfach den Befehl „Get-Help“ ein. Für Hilfe zu einem bestimmten Cmdlet geben Sie „Get-Help Cmdlet-Name“ ein. Wenn wir beispielsweise den Befehl „Get-Help Get-Process“ eingeben, erhalten wir Hilfe zum Cmdlet „Get-Process“.

So führen Sie ein Windows PowerShell-Programm aus

Das Windows PowerShell-Programm kann gestartet werden verschiedene Wege. Am einfachsten ist es, einfach die Suche im Startmenü zu nutzen. Öffnen Sie dazu das Startmenü, geben Sie ein Suchanfrage„Windows PowerShell“, dann öffnen Sie das gefundene Programm.

Sie können auch eine Kombination verwenden Windows-R-Tasten und geben Sie den Befehl „powershell“ ein.

In Windows 10 kann PowerShell aus jedem Ordner gestartet werden. Klicken Sie dazu auf die Schaltfläche „Datei“ in der oberen linken Ecke des Explorers und wählen Sie „Windows PowerShell ausführen“.

So verwenden Sie Windows PowerShell

Wie bereits erwähnt, können Sie mit dem PowerShell-Programm viele Routineaufgaben im Windows-Betriebssystem automatisieren. Als Beispiel werden wir einige der Möglichkeiten demonstrieren dieses Werkzeug, damit klar wird, wie man es benutzt.

Den Papierkorb leeren. Zum Leeren des Papierkorbs gibt es ein spezielles Cmdlet namens „Clear-RecycleBin“. Dieses Cmdlet ist nützlich, wenn Sie Skripts für die Wartung von Computern schreiben. Wenn Sie das Cmdlet ausführen, müssen Sie das Laufwerk angeben, auf dem Sie den Papierkorb leeren möchten. Beispiel:

Clear-RecycleBin c:

Der Screenshot unten zeigt, wie dieses Cmdlet ausgeführt wird. Nach Eingabe des Befehls „Clear-RecycleBin c:“ erscheint eine Bestätigungsabfrage. Um mit der Ausführung des Cmdlets fortzufahren, geben Sie den Buchstaben „Y“ ein und drücken Sie die Eingabetaste.

Wenn Sie „-Force“ zum Cmdlet „Clear-RecycleBin c:“ hinzufügen, wird der Papierkorb geleert, ohne dass eine Bestätigung erforderlich ist. Screenshot unten.

Archivierung von Dateien. Zum Archivieren und Entpacken von Dateien stehen die Cmdlets „Compress-Archive“ und „Expand-Archive“ zur Verfügung. Um beispielsweise den Ordner „C:\test\“ im Archiv „C:\archive\test2.zip“ zu archivieren, müssen Sie das folgende Cmdlet ausführen:

Compress-Archive -LiteralPath C:\test\ -DestinationPath C:\archive\test2.zip

Als Ergebnis der Ausführung des oben gezeigten Befehls erscheint im Ordner „C:\archive\“ eine Datei „test2.zip“, in der der Inhalt des Ordners „C:\test\“ archiviert wird.

Liste der Cmdlets für Windows PowerShell

Es gibt eine Vielzahl unterschiedlicher Cmdlets für Windows PowerShell und es wird nicht möglich sein, sie alle in einem Artikel zu beschreiben. Daher empfehlen wir Ihnen, sich mit den beliebtesten davon vertraut zu machen:

  • Get-Help – Hilfe bekommen;
  • Update-Hilfe – Hilfe-Update;
  • Get-Command – Suche nach Cmdlets;
  • Get-Alias ​​– Suche nach Aliasen für Cmdlets;
  • Get-PSDrive – verbundene Laufwerke anzeigen;
  • Get-Member – die Eigenschaften und Methoden eines Objekts anzeigen;
  • Get-WindowsFeature – Informationen zu verfügbaren Serverrollen und -funktionen anzeigen;
  • Install-WindowsFeature (analog zu Add-WindowsFeature) – installiert Rollen oder Komponenten auf dem gewünschten Server;
  • Uninstall-WindowsFeature (analog zu Remove-WindowsFeature) – entfernt Serverrollen oder Komponenten;
  • Get-History – Anzeigen des Verlaufs der Befehle, die in dieser Sitzung eingegeben wurden;
  • Get-Variable – eine Liste von Variablen und ihren Werten anzeigen;
  • Neue Variable – Erstellen einer neuen Variable;
  • Set-Variable – den Wert einer Variablen festlegen;
  • Clear-Variable – Löschen eines Variablenwerts;
  • Remove-Variable – Entfernen einer Variablen und ihres Werts;
  • Format-Liste – Anzeige des Ergebnisses des Befehls als Liste von Eigenschaften, wobei jede Zeile eine separate Eigenschaft enthält;
  • Format-Tabelle – Zeigen Sie das Befehlsergebnis im Tabellenformat an.
  • Format-Wide – Zeigt das Ergebnis des Befehls in Form einer breiten Tabelle an, die nur eine Eigenschaft für jedes Objekt anzeigt;
  • Format-Benutzerdefiniert – Zeigen Sie das Ergebnis des Befehls in einer benutzerdefinierten Ansicht an.
  • Export-Csv – Daten in das CSV-Format exportieren;
  • Import-Csv – Daten aus einer CSV-Datei importieren;
  • Export-Clixml – Daten in das XML-Format exportieren;

Sie können eine vollständige Liste der Cmdlets für Windows PowerShell abrufen, indem Sie das Cmdlet Get-Command -CommandType ausführen.

Wahrscheinlich hat jeder von PowerShell gehört, aber wahrscheinlich hatte nicht jeder die Gelegenheit, damit zu arbeiten. Für diejenigen, die gerade erst anfangen, sich in die Wildnis von PowerShell einzuarbeiten, stellen wir eine Übersetzung eines auf dem Portal 4sysops.com veröffentlichten Beitrags zur Verfügung. Es geht um 7 Befehle, die denjenigen helfen, die gerade erst anfangen, mit PowerShell zu arbeiten. Für Details – willkommen bei cat.

HILFE BEKOMMEN

Das allererste und wichtigste PowerShell-Cmdlet ist der Hilfeaufruf. Mit dem Cmdlet „Get-Help“ können Sie die Syntax überprüfen, Anwendungsbeispiele ansehen und eine detaillierte Beschreibung der Parameter jedes PowerShell-Cmdlets anzeigen. Das Tolle an diesem Cmdlet ist, dass Sie einfach „Get-Help Services“ eingeben können, um eine Liste aller Cmdlets zu erhalten, die mit Diensten funktionieren.
Beispiel:
PS C:\>Get-Help Service

Sie können ein beliebiges Cmdlet aus der von der obigen Abfrage bereitgestellten Liste auswählen, um Hilfe dazu zu erhalten. Zum Beispiel,
PS C:\> Get-Help -Name Get-Service
Sie erhalten alle Informationen zum Get-Service-Cmdlet (siehe unten).

GET-CONTENT

Das Lesen des Inhalts von Dateien ist die häufigste Voraussetzung für Anfänger, die PowerShell erlernen möchten. Das Lesen von Dateien mit PowerShell wird vereinfacht. Selbst ein Laie kann den Inhalt einer Datei lesen, indem er ihn einfach an das Cmdlet Get-Content übergibt.
Beispiel.
PS C:\> Get-Content C:\scripts\Computers.txt mytestpc1 techibee.com dummynotresolvinghost.com PS C:\>

Benötigen Sie weitere Informationen zum Cmdlet? Verwenden Sie Get-Help:
PS C:\> Get-Help Get-Content -Detailed

GET-SERVICE

Dieses Cmdlet listet alle auf dem Computer installierten Dienste auf. Sie können damit Informationen über einen bestimmten Dienst, eine Sammlung von Diensten oder einfach alle Dienste auf Ihrem Computer abrufen.
Beispiel:
PS C:\> Get-Service wwansvc, Spooler-Statusname DisplayName ------ ---- ----------- Running spooler Print Spooler Stopped wwansvc WWAN AutoConfig PS C:\>


Hier haben wir um Informationen zu den beiden Diensten wwansvc und spooler gebeten
Es wird eine Tabelle mit dem Dienststatus, seinem Namen und seinem Anzeigenamen angezeigt.
Wir können sehen, dass der Spooler-Dienst ausgeführt wird und wwansvc gestoppt ist

STOP-SERVICE UND START-SERVICE

Es reicht aus, Dienste zu starten und zu stoppen wichtiger Punkt als Windows-Administrator. PowerShell verfügt über integrierte Cmdlets, die die Arbeit des Administrators erleichtern, ohne dass Sie eine MMC-Konsole öffnen müssen. Mit diesen Cmdlets können Sie Dienste sowohl auf lokalen als auch auf Remotecomputern stoppen/starten.
Beispiele:
Einen Dienst auf dem lokalen Computer starten/stoppen (am Beispiel des Spooler-Dienstes):
PS C:\> Stop-Service -Name Spooler PS C:\> Start-Service -Name Spooler

Starten/stoppen Sie den Dienst entfernter Computer(Spooler):
PS C:\> $ServiceObj = Get-Service -ComputerName MyPC1 -Name Spooler PS C:\> Stop-Service -InputObj $ServiceObj PS C:\> Start-Service -InputObj $ServiceObj

GET-PROZESS

Mit diesem Cmdlet können Sie erkennen, welche Prozesse auf lokalen oder Remotecomputern ausgeführt werden. Der Prozessname und die ID werden zusammen mit dem Pfad zur ausführbaren Datei, dem Firmennamen, der Version der ausführbaren Datei und dem vom Prozess verwendeten Speicher angezeigt.
Beispiele:
Informationen zu Prozessen abrufen, die auf dem lokalen Computer ausgeführt werden:

PS C:\>Get-Process

Geben Sie das folgende Cmdlet ein, um detaillierte Informationen dazu zu erhalten Laufende Prozesse
PS C:\> Get-Process | Format-Liste * -Force

Abrufen von Informationen über Prozesse, die auf einem Remotecomputer ausgeführt werden:
PS C:\> Get-Process -ComputerName MYPC1 | Format-Liste * -Force

MYPC1 muss durch den Namen des Computers ersetzt werden, von dem Sie Informationen über laufende Prozesse erhalten möchten.

STOP-PROZESS

Dieses Cmdlet stoppt einen Prozess auf einem lokalen oder Remotecomputer. Es nimmt den Namen oder die ID des Prozesses und beendet diesen Prozess. Dies ist in Fällen nützlich, in denen die Anwendung nicht reagiert.
Beispiel:
Stoppen Sie den Prozess mit der ID 22608 auf dem lokalen Computer:
PS C:\> Stop-Process -Id 22608
Stoppen Sie alle Excel-Prozesse auf dem lokalen Computer:
PS C:\> Stop-Process -name excel

Beratung Hinweis: Obwohl das Cmdlet „Stop-Process“ nicht über den Parameter „-ComputerName“ verfügt, können Sie ihn dennoch verwenden, um Remoteprozesse zu beenden, indem Sie den folgenden Tipp befolgen:
PS C:\> $Obj = Get-Process -Name excel -ComputerName MYPC1 PS C:\> Stop-Process -InputObject $Obj

Aktualisierung:
Der Beitrag enthält eine Übersetzung eines Artikels aus dem Portal

Cmdlets in Windows PowerShell sehr viel, deshalb schlage ich heute vor, eine kleine Liste der nützlichsten und am häufigsten verwendeten Cmdlets mit zu betrachten kurze Beschreibung Was sie tun können. Diese Referenz hilft Ihnen, schnell den Windows PowerShell-Befehl zu finden, der Sie interessiert, und richtet sich an unerfahrene Systemadministratoren.

Notiz! Diese Referenz basiert auf PowerShell 5.0-Cmdlets auf dem Betriebssystem Windows Server 2016.

Nützliche Windows PowerShell-Cmdlets

In diesem Abschnitt liste ich die PowerShell-Cmdlets auf, die Sie auf jeden Fall verwenden werden.

  • Get-Help – Zeigt Cmdlet-Hilfe, Funktionen und allgemeine Windows PowerShell-Hilfe an. Es gibt verschiedene Arten von Hilfe: kurz, detailliert, vollständig und nur mit Beispielen;
  • Update-Help – lädt neue Hilfedateien herunter und installiert sie, d. h. Hilfe-Update;
  • Get-Command – ein Cmdlet zum Suchen des erforderlichen Befehls. Sie können sowohl nach Verb als auch nach Substantiv suchen. Es ist auch möglich, eine Maske zu verwenden, wenn Sie den genauen Namen des Verbs oder Substantivs nicht kennen.
  • Get-Alias ​​​​– zeigt Aliase, alle oder einen bestimmten Befehl;
  • Get-PSDrive – zeigt verbundene Laufwerke an;
  • Get-Member – zeigt die Eigenschaften und Methoden an, die ein Objekt hat;
  • Get-WindowsFeature – zeigt Informationen zu verfügbaren Serverrollen und -funktionen an;
  • Install-WindowsFeature( Äquivalent zu Add-WindowsFeature) – installiert Rollen oder Komponenten auf dem angegebenen Server;
  • Uninstall-WindowsFeature ( Äquivalent zu Remove-WindowsFeature) – löscht Serverrollen oder Komponenten;
  • Get-History – Gibt eine Liste der während der aktuellen Sitzung eingegebenen Befehle zurück.

Arbeiten mit Variablen

In PowerShell verwenden Sie normalerweise das Dollarzeichen $ (, um eine Variable zu erstellen, sie auf einen Wert festzulegen oder diesen Wert abzurufen. kurz und praktisch), aber für diese Zwecke gibt es spezielle Cmdlets.

  • Get-Variable – zeigt eine Liste von Variablen und ihren Werten an ( oder eine angegebene Variable);
  • Neue Variable – erstellt eine neue Variable;
  • Set-Variable – legt den Wert einer Variablen fest. Wenn eine Variable mit dem angegebenen Namen nicht existiert, wird sie erstellt;
  • Clear-Variable – löscht den Wert einer Variablen;
  • Remove-Variable – Entfernt eine Variable und ihren Wert.

Formatierung in Windows PowerShell

Windows PowerShell verfügt über eine Reihe von Cmdlets, mit denen die Ausgabe eines Cmdlets formatiert werden kann. Sie ermöglichen dem Benutzer, das Ergebnis in der Form anzuzeigen, in der es für ihn bequem ist, dieses Ergebnis anzuzeigen.

  • Format-Liste – gibt das Ergebnis des Befehls im Format einer Liste von Eigenschaften aus, wobei jede neue Zeile eine separate Eigenschaft enthält;
  • Format-Table – gibt das Befehlsergebnis in Form einer Tabelle aus;
  • Format-Wide – Geben Sie das Befehlsergebnis in Form einer breiten Tabelle aus, die nur eine Eigenschaft jedes Objekts anzeigt.
  • Format-Benutzerdefiniert – in diesem Fall wird die Ausgabe mit einer benutzerdefinierten Ansicht formatiert.

Import und Export

Mit PowerShell können Sie Daten in verschiedenen gängigen Formaten wie CSV oder XML importieren und exportieren und die Ausgabe eines Befehls auch an eine externe Datei oder einen Drucker umleiten.

  • Export-Csv – Daten in das CSV-Format exportieren;
  • Import-Csv – importiert Daten aus einer CSV-Datei;
  • Export-Clixml – Daten in das XML-Format exportieren;
  • Import-Clixml – Importiert eine CLIXML-Datei und erstellt die entsprechenden Objekte in Windows-Shell Power Shell;
  • Out-File – sendet die Ausgabe des Cmdlets an eine externe Datei ( zum Beispiel in TXT);
  • Out-Printer – gibt das Ergebnis des Befehls an den Drucker aus;
  • Import-Module – fügt Module in der aktuellen Sitzung hinzu.

Netzwerk in Windows PowerShell

Für die Netzwerkverwaltung in Windows PowerShell gibt es Cmdlets wie:

  • Disable-NetAdapter – das Cmdlet deaktiviert den Netzwerkadapter;
  • Enable-NetAdapter – dieses Cmdlet aktiviert den Netzwerkadapter;
  • Rename-NetAdapter – benennt den Netzwerkadapter um;
  • Restart-NetAdapter – startet den Netzwerkadapter neu;
  • Get-NetIPAddress – zeigt Informationen zur IP-Adresskonfiguration an;
  • Set-NetIPAddress – ändert die IP-Adresskonfiguration;
  • New-NetIPAddress – erstellt und konfiguriert eine IP-Adresse;
  • Remove-NetIPAddress – entfernt eine IP-Adresse und ihre Konfiguration;
  • Get-NetRoute – zeigt die IP-Routing-Tabelle an;
  • Set-NetRoute – ändert die IP-Routing-Tabelle;
  • New-NetRoute – erstellt einen Eintrag in der IP-Routing-Tabelle;
  • Remove-NetRoute – entfernt einen oder mehrere Einträge ( IP-Routen) aus der IP-Routing-Tabelle;
  • Get-NetIPv4Protocol – zeigt Informationen zur IPv4-Protokollkonfiguration an;
  • Get-NetIPv6Protocol – zeigt Informationen zur IPv6-Protokollkonfiguration an;
  • Get-NetIPInterface – zeigt Informationen zu den Eigenschaften der IP-Schnittstelle an;
  • Get-NetTCPSetting – zeigt Informationen zu TCP-Einstellungen und -Konfiguration an;
  • Test-Connection – Cmdlet sendet ICMP-Pakete an einen oder mehrere Computer, d. h. " Pings" Computers.

Arbeiten mit Elementen

Windows PowerShell verfügt über Cmdlets, die mit Elementen arbeiten können; Elemente können hier als Dateien, Ordner, Registrierungsschlüssel usw. verstanden werden.

  • Clear-Item – löscht den Inhalt eines Elements, löscht jedoch nicht das Element selbst;
  • Copy-Item – kopiert ein Element;
  • Get-Item – ruft das Element am angegebenen Speicherort ab;
  • Invoke-Item – Führt eine Standardaktion für das angegebene Element aus;
  • Move-Item – verschiebt ein Element;
  • New-Item – erstellt ein neues Element;
  • Remove-Item – entfernt die angegebenen Elemente;
  • Rename-Item – Benennt ein Element im Windows PowerShell-Anbieter-Namespace um;
  • Set-Item – ändert das Element;
  • Get-ChildItem – Gibt Elemente und untergeordnete Elemente an einem oder mehreren angegebenen Speicherorten zurück;
  • Get-Location – zeigt Informationen über den aktuellen Standort an.

Cmdlets für die Arbeit mit Active Directory (AD)

Selbstverständlich ermöglicht Ihnen Windows PowerShell die Arbeit mit dem Active Directory-Verzeichnisdienst. Für diese Zwecke gibt es viele Cmdlets, hier sind einige davon:

  • New-ADUser – Erstellen eines neuen Benutzers in Active Directory;
  • Get-ADUser – zeigt Informationen über Active Directory-Benutzer an;
  • Set-ADUser – ändert den Active Directory-Benutzer;
  • Remove-ADUser – entfernt einen Active Directory-Benutzer;
  • New-ADGroup – Cmdlet erstellt eine Gruppe in Active Directory;
  • Get-ADGroup – Zeigt Gruppeninformationen an oder führt eine Suche durch, um mehrere Gruppen aus Active Directory abzurufen.
  • Set-ADGroup – Cmdlet ändert eine Gruppe in Active Directory;
  • Remove-ADGroup – Löschen einer Gruppe in Active Directory;
  • Add-ADGroupMember – Das Cmdlet fügt Benutzer-, Computer- oder Gruppenkonten als neue Mitglieder einer Active Directory-Gruppe hinzu;
  • Get-ADGroupMember – zeigt Informationen über Active Directory-Gruppenmitglieder an;
  • Remove-ADGroupMember – entfernt Elemente aus einer Active Directory-Gruppe;
  • Set-ADAccountPassword – Passwort zurücksetzen Konto Active Directory;
  • Disable-ADAccount – Deaktiviert das Active Directory-Konto.
  • Enable-ADAccount – aktiviert das Active Directory-Konto;
  • Unlock-ADAccoun – entsperrt ein Active Directory-Konto;
  • New-ADComputer – Erstellen eines neuen Computerkontos in Active Directory;
  • Get-ADComputer – zeigt Informationen über einen oder mehrere Computer im Active Directory an;
  • Set-ADComputer – Computerkonto in Active Directory ändern;
  • Remove-ADComputer – entfernt einen Computer aus Active Directory.

Arbeiten mit Hyper-V

Es gibt viele Cmdlets für die Arbeit mit Hyper-V in Windows PowerShell, hier eine kleine Liste:

  • New-VM – eine neue erstellen virtuelle Maschine;
  • Set-VM – Einrichten einer virtuellen Maschine;
  • Start-VM – eine virtuelle Maschine starten;
  • Stop-VM – Schließen, Ausschalten oder Speichern der virtuellen Maschine;
  • Import-VM – eine virtuelle Maschine aus einer Datei importieren;
  • Move-VM – Verschieben einer virtuellen Maschine auf einen neuen Hyper-V-Host;
  • Remove-VM – Entfernen einer virtuellen Maschine;
  • Rename-VM – benennen Sie die virtuelle Maschine um;
  • Neue VHD – Erstellen einer oder mehrerer neuer virtueller Festplatten Festplatte;
  • Set-VHD – Einrichten einer virtuellen Festplatte;
  • Test-VHD – Testet die virtuelle Festplatte, um Probleme zu erkennen, die sie unbrauchbar machen würden;
  • Add-VMDvdDrive – fügt hinzu DVD-Disc zu einer virtuellen Maschine;
  • Remove-VMDvdDrive – entfernt eine DVD aus einer virtuellen Maschine;
  • Add-VMHardDiskDrive – fügt hinzu Festplatte zu einer virtuellen Maschine;
  • Remove-VMHardDiskDrive – entfernt eine oder mehrere virtuelle Festplatten (VHD) aus einer virtuellen Maschine;
  • Add-VMNetworkAdapter – fügt der virtuellen Maschine einen virtuellen Netzwerkadapter hinzu;
  • Remove-VMNetworkAdapter – entfernt einen oder mehrere virtuelle Netzwerkadapter von einer virtuellen Maschine;
  • Copy-VMFile – Dateien auf eine virtuelle Maschine kopieren;
  • Get-VMVideo – zeigt Informationen zu Videoeinstellungen für virtuelle Maschinen an;
  • Move-VMStorage – Verschieben des Speichers der virtuellen Maschine.

Arbeiten mit Hintergrundjobs

Windows PowerShell bietet die Möglichkeit, Aufgaben auszuführen Hintergrund, sodass, ohne darauf zu warten, dass der Befehl seine Arbeit abschließt ( für Fälle, in denen die Ausführung der Aufgabe lange dauert), in der aktuellen Sitzung weiterarbeiten. Arbeiten mit Hintergrundjobs PowerShell verfügt über die folgenden Cmdlets:

  • Start-Job – eine Hintergrundaufgabe starten;
  • Stop-Job – Stoppen Sie eine Hintergrundaufgabe
  • Get-Job – Liste der Hintergrundaufgaben anzeigen;
  • Receive-Job – das Ergebnis einer Hintergrundaufgabe anzeigen;
  • Remove-Job – eine Hintergrundaufgabe entfernen;
  • Wait-Job – Verschieben Sie eine Hintergrundaufgabe in den Vordergrund, um auf deren Abschluss zu warten.

Arbeiten mit Objekten

Da PowerShell mit Objekten arbeitet, können Sie bestimmte Aktionen für diese Objekte ausführen, zum Beispiel:

  • Mit dem Cmdlet „Measure-Object“ können Sie basierend auf den Eigenschaften von Objekten numerische Aggregationsparameter wie Minimum, Maximum, Durchschnittswert, Summe und Menge berechnen. Sie möchten beispielsweise die maximale oder durchschnittliche Dateigröße in einem bestimmten Verzeichnis ermitteln oder einfach die Anzahl der Dateien ermitteln ( laufende Prozesse, Dienste usw.);
  • Select-Object – mit diesem Cmdlet können Sie bestimmte Objekte oder Eigenschaften dieser Objekte auswählen, beispielsweise möchten Sie nur den Dateinamen und seine Größe anzeigen;
  • Sort-Object – sortiert Objekte nach Eigenschaftswerten;
  • Where-Object – Cmdlet zum Festlegen einer Bedingung für die Auswahl von Objekten basierend auf den Werten ihrer Eigenschaften;
  • Group-Object – gruppiert Objekte, die denselben Wert für die angegebenen Eigenschaften enthalten;
  • ForEach-Object – iteriert über Objekte, um an jedem dieser Objekte eine bestimmte Operation auszuführen.

PowerShell-Cmdlets für die Remoteverwaltung

MIT unter Verwendung von Windows PowerShell kann Befehle nicht nur auf Ihrem lokalen Computer ausführen, sondern auch auf einem oder sogar mehreren Remotecomputern.

  • Enter-PSSession – startet eine interaktive Sitzung mit einem Remote-Computer;
  • Exit-PSSession – beendet eine interaktive Sitzung mit einem Remote-Computer;
  • New-PSSession – erstellt eine dauerhafte Verbindung zu einem lokalen oder Remotecomputer;
  • Remove-PSSession – schließt eine oder mehrere Windows PowerShell-Sitzungen;
  • Disconnect-PSSession – trennt die Verbindung zur Sitzung;
  • Connect-PSSession – stellt eine Verbindung zu getrennten Sitzungen her;
  • Get-PSSession – Ruft Windows PowerShell-Sitzungen auf lokalen und Remotecomputern ab;
  • Invoke-Command – Führt Befehle auf lokalen und Remote-Computern aus.

Arbeiten mit Diensten und Prozessen

PowerShell kann natürlich Dienste und Prozesse in Windows verwalten; dafür gibt es Cmdlets wie:

  • Get-Process – zeigt Informationen über laufende Prozesse auf dem Computer an;
  • Start-Prozess – startet einen oder mehrere Prozesse auf dem Computer;
  • Stop-Process – stoppt einen oder mehrere laufende Prozesse;
  • Get-Service – zeigt Informationen über Dienste an;
  • Restart-Service – startet den Dienst neu;
  • Start-Service – startet den Dienst;
  • Stop-Service – stoppt den Dienst;
  • Suspend-Service – unterbricht den Dienst;
  • Set-Service – Mit diesem Cmdlet können Sie die Eigenschaften eines Dienstes ändern, z. B. Beschreibung, Anzeigename und Startmodus. Es kann auch zum Starten, Stoppen oder Pausieren eines Dienstes verwendet werden.

Arbeiten Sie mit dem Computer

Mit Windows PowerShell können Sie Verwaltungsaufgaben ausführen Betriebssystem und der Computer als Ganzes, zum Beispiel das Betriebssystem neu starten oder den Computer umbenennen.

  • Restart-Computer – Das Cmdlet startet das Betriebssystem neu ( startet den Computer neu);
  • Stop-Computer – schaltet den Computer aus;
  • Computer umbenennen – benennt den Computer um;
  • Checkpoint-Computer – erstellt einen Systemwiederherstellungspunkt auf dem lokalen Computer;
  • Restore-Computer – führt die Systemwiederherstellung auf dem lokalen Computer aus;
  • Disable-ComputerRestore – deaktiviert die Systemwiederherstellungsfunktion auf dem angegebenen Dateisystemlaufwerk;
  • Enable-ComputerRestore – aktiviert die Systemwiederherstellungsfunktion auf dem angegebenen Dateisystemlaufwerk;
  • Remove-Computer – entfernt lokalen Computer aus der Domäne;
  • Get-EventLog – zeigt Informationen zu Ereignissen im Ereignisprotokoll oder eine Liste von Ereignisprotokollen auf einem lokalen oder Remote-Computer an;
  • Clear-EventLog – Entfernt Einträge aus den angegebenen Ereignisprotokollen.

Arbeiten mit Inhalten

Um Inhalte, beispielsweise Text in einer Datei, zu verwalten, gibt es in Windows PowerShell spezielle Cmdlets, wie zum Beispiel:

  • Get-Content – ​​Ruft den Inhalt eines Elements ab ( liest beispielsweise eine Datei);
  • Add-Content – ​​​​fügt Inhalt zu bestimmten Elementen hinzu, zum Beispiel Text zu einer Datei;
  • Clear-Content – ​​entfernt den Inhalt des Elements, entfernt jedoch nicht das Element selbst;
  • Set-Content – ​​Schreibt oder ersetzt Inhalte in ein Element durch neuen Inhalt.

Andere Windows PowerShell-Cmdlets

Ich möchte auch die folgenden Windows PowerShell-Cmdlets hervorheben, die Sie wahrscheinlich benötigen und die nützlich sein werden.

  • Get-ExecutionPolicy – ​​​​Mit diesem Cmdlet können Sie die aktuelle Windows PowerShell-Ausführungsrichtlinie für die aktuelle Sitzung ermitteln;
  • Set-ExecutionPolicy – ​​​​Das Cmdlet ändert die Windows PowerShell-Ausführungsrichtlinie;
  • Write-Host – zeigt Informationen auf dem Bildschirm an ( schreibt den Text);
  • Read-Host – liest die Eingabezeile von der Konsole;
  • Write-Warning – zeigt eine Warnmeldung an;
  • Write-Error – das Cmdlet deklariert einen Fehler und zeigt ihn im Fehlerstrom an;
  • Get-Date – kehrt zurück aktuelles Datum und Zeit;
  • Set-Date – Das Cmdlet ändert das Systemdatum und die Systemzeit auf dem Computer.

Deshalb haben wir uns nützliche und häufig verwendete Windows PowerShell-Cmdlets angesehen. Ich hoffe, dieses Nachschlagewerk wird Ihnen nützlich sein, viel Glück!

Viele Benutzer kennen die Eingabeaufforderung, aber nur sehr wenige haben von Windows PowerShell gehört. In gewissem Sinne ist PowerShell ein Tool, das die Befehlszeile ersetzen und leistungsfähigere Funktionen für die Verwaltung des Windows-Betriebssystems bereitstellen soll. In diesem Artikel werden wir versuchen, klar zu erklären, was dieses Tool ist, warum es so leistungsstark ist und wer es am häufigsten verwendet.

Was ist PowerShell?

Zum besseren Verständnis müssen wir zunächst verstehen, was eine Shell ist. In der Informatik wird eine Schale genannt Benutzeroberfläche, das Zugriff auf verschiedene Betriebssystemdienste bietet. Die Shell kann befehlszeilenbasiert sein oder eine grafische Benutzeroberfläche (GUI) enthalten.

Windows PowerShell ist eine von Microsoft entwickelte Shell zur Aufgabenautomatisierung und Konfigurationsverwaltung. Diese leistungsstarke Shell basiert auf dem .NET Framework und umfasst eine Befehlszeilen-Shell und eine Skriptsprache.

Möglicherweise gibt es auch eine Windows PowerShell ISE zusätzlich zur Standard-Befehlszeilen-Shell. ISE fungiert als integrierte Skriptumgebung – eine grafische Benutzeroberfläche, die es Ihnen ermöglicht, verschiedene Skripte zu erstellen, ohne alle Befehle in der Befehlszeile eingeben zu müssen.

Die erste Version von PowerShell wurde im November 2006 für Windows XP veröffentlicht. Windows Server 2003 und Windows Vista. Die neueste Version ist Version 4.0, die im Oktober 2013 veröffentlicht wurde. Sie wird standardmäßig mit Windows 8.1 und Windows Server 2012 R2 ausgeliefert.

Was können Sie mit PowerShell machen?

Microsoft hat Windows PowerShell als Tool entwickelt, das dabei hilft, viele mühsame Verwaltungsaufgaben zu automatisieren und schnell zu lösen. Sie können beispielsweise PowerShell verwenden, um alle auf einem oder mehreren Computern in Ihrem Netzwerk installierten USB-Geräte anzuzeigen, oder Sie können eine zeitaufwändige Aufgabe einrichten, die im Hintergrund ausgeführt wird, während Sie andere Arbeiten erledigen. Sie können auch nicht reagierende Prozesse identifizieren und beenden oder bestimmte Informationen zu Computern in Ihrem Netzwerk filtern und im HTML-Format exportieren.

Mit den Funktionen von PowerShell können Sie zeitaufwändige und sich wiederholende Aufgaben vereinfachen und automatisieren, indem Sie Skripts erstellen und mehrere Befehle miteinander kombinieren.

Wenn Sie ein Netzwerkadministrator sind, wird PowerShell bei der Arbeit mit Active Directory sehr nützlich sein. Wenn man bedenkt, dass das Tool Hunderte anpassbarer Befehle, sogenannte Cmdlets, enthält, ist die Wahrscheinlichkeit, dass PowerShell Ihnen dabei helfen kann, produktiver zu werden, sehr hoch.

Wie führe ich PowerShell unter Windows 8.1 aus?

Wenn Sie keine PowerShell-Kachel auf Ihrem Startbildschirm oder keine Verknüpfung auf Ihrem Desktop haben, können Sie sie über die Suche öffnen – dies ist eine der häufigsten einfache Wege. Drücken Sie +Q, geben Sie „powershell“ ein und drücken Sie dann die Eingabetaste.

Sie können PowerShell auch über den Apps-Bereich Ihres Startbildschirms öffnen: Gehen Sie zum Startbildschirm und bewegen Sie den Cursor in die untere linke Ecke, direkt unter der letzten Kachel in der ersten Spalte. Klicken Sie auf das Symbol mit dem Pfeil nach unten. Klicken Sie dann im Abschnitt „Dienstprogramme“ auf das PowerShell-Symbol.

Um PowerShell über das Dialogfeld „Ausführen“ zu öffnen, drücken Sie +R, geben Sie „powershell“ ein und drücken Sie die Eingabetaste.

Wie führe ich PowerShell unter Windows 7 aus?

Unter Windows 7 finden Sie das Tool, indem Sie im Startmenü nach „Powershell“ suchen.

Sie können PowerShell auch über das Startmenü im Abschnitt „Zubehör“ öffnen.

Offensichtlich funktioniert der obige Befehl im Ausführungsfenster auch unter Windows 7.

Wer nutzt normalerweise PowerShell?

Ohne Zweifel ist PowerShell die erste Wahl vieler IT-Administratoren. Und das aus gutem Grund, denn das Tool vereinfacht die Verwaltungsvorgänge erheblich und reduziert den Arbeitsaufwand erheblich Unternehmensnetzwerke.

Nehmen wir an, Sie haben die Kontrolle großes Netzwerk, mit über fünfhundert Servern, und Sie müssen eine neue Sicherheitslösung implementieren, die von einem Dienst abhängt, der auf diesen Servern ausgeführt werden muss. Natürlich können Sie sich mit jedem Server verbinden und sehen, ob der erforderliche Dienst auf ihnen installiert ist und ausgeführt wird. Allerdings wird Ihr Management in diesem Fall wahrscheinlich nicht zufrieden sein, da Sie für die Erledigung der Aufgabe zu viel Zeit benötigen.

Mit PowerShell können Sie diese Aufgabe in wenigen Minuten erledigen, da der gesamte Vorgang mit einem einzigen Skript erledigt werden kann, das Informationen über die auf den angegebenen Servern ausgeführten Dienste sammelt und diese unter speichert Textdatei, Zum Beispiel.

Mit PowerShell können Sie viel mehr tun, als in einem Artikel behandelt werden kann. Wenn Sie also wirklich interessiert sind, empfehlen wir Ihnen dringend, eines der vielen Bücher zu kaufen und zu lesen, die die Leistungsfähigkeit dieses Tools behandeln.

Ich wünsche ihnen einen wunderbaren Tag!

Außerdem können Sie allgemeine Befehlszeilenbefehle ausführen, um eine einheitliche Umgebung zu schaffen, in der Administratoren verschiedene Aufgaben auf lokalen und Remote-Systemen ausführen können.

Diese Verwaltungsaufgaben werden normalerweise mithilfe von Cmdlets (im Original) ausgeführt Cmdlets), bei denen es sich um spezialisierte .NET-Klassen handelt. Der Benutzer kann sie in Skripten (Szenarien) kombinieren und dabei verschiedene Konstrukte, Befehlszeilen-Dienstprogramme und Aufrufe an reguläre .NET-Klassen, WMI- oder COM-Objekte verwenden. Darüber hinaus können Sie verschiedene Datenspeicher wie das Dateisystem oder die Windows-Registrierung nutzen, die von PowerShell über Anbieter bereitgestellt werden. Anbieter).

Windows PowerShell bietet außerdem einen Einbettungsmechanismus, sodass ausführbare PowerShell-Komponenten in andere Anwendungen eingebettet werden können. Diese Anwendungen können dann die PowerShell-Funktionalität verwenden, um verschiedene Vorgänge zu implementieren, einschließlich solcher, die über eine GUI bereitgestellt werden. Dieser Ansatz wurde in Microsoft Exchange Server 2007 verwendet, um Verwaltungsfunktionen in Form von PowerShell-Cmdlets und grafische Verwaltungsdienstprogramme in Form von PowerShell-Shells zu implementieren, die die erforderlichen Cmdlets aufrufen. Somit befindet sich die grafische Verwaltungsoberfläche auf der mittleren Ebene – PowerShell. Andere Microsoft-Anwendungen, einschließlich Microsoft SQL Server 2008 bieten System Center Operations Manager und System Center Data Protection Manager auch Zugriff auf ihre Verwaltungsschnittstellen über PowerShell-Cmdlets. Alles in der Zukunft Serveranwendungen Microsoft wird auf der Windows-Plattform PowerShell auf die eine oder andere Weise verwenden.

Windows PowerShell enthält eine eigene erweiterbare Hilfe, auf die (auch über die Befehlszeile) über das Cmdlet Get-Help zugegriffen werden kann.

Hintergrund

Cmdlets

Szenarien

PowerShell umfasst eine dynamisch typisierte Skriptsprache, mit der komplexe Vorgänge mithilfe von Cmdlets implementiert werden können. Die Skriptsprache unterstützt Variablen, Funktionen, if-then-else-Konstrukte, Schleifen (while, do, for und foreach), strukturierte Fehlerbehandlung und viele andere Funktionen, einschließlich der .NET-Integration. Variablen werden in PowerShell durch ein $-Präfix vor dem Namen gekennzeichnet; Ihnen kann ein beliebiger Wert zugewiesen werden, einschließlich der Ausgabe von Cmdlets. Obwohl die Sprache selbst nicht stark typisiert ist, werden Variablen intern mit ihren Typen gespeichert, bei denen es sich um Basistypen handeln kann. primitive Typen) oder Gegenstände. Zeichenfolgen können bei Verwendung in einfache oder doppelte Anführungszeichen gesetzt werden: Anführungszeichen Die in der Zeichenfolge enthaltenen Variablen werden durch ihre Werte ersetzt. Wenn ein Dateipfad in geschweiften Klammern mit vorangestelltem Dollarzeichen (d. h. $(C:\foo.txt)) angegeben wird, handelt es sich gemäß der Variablensyntax um einen Link zum Inhalt der Datei. Alles, was einer solchen Variablen zugewiesen ist, wird in die Datei geschrieben und umgekehrt – beim Zugriff auf deren Inhalt wird der Inhalt der Datei ausgegeben.

Auf die Eigenschaften und Methoden eines Objekts kann mit einem Punkt (.) zugegriffen werden, wie in . PowerShell bietet spezielle Variablen wie $args, das ein Array aller unbenannten Befehlszeilenargumente enthält, die an eine Funktion übergeben werden, oder $_, das auf das aktuelle Objekt in einer Pipeline und anderen Konstrukten verweist. PowerShell umfasst auch Arrays und assoziative Arrays. Darüber hinaus wertet PowerShell in der Befehlszeile eingegebene arithmetische Ausdrücke automatisch aus und versteht gängige Abkürzungen wie GB, MB und KB.

In PowerShell können Sie Ihre eigenen Funktionen erstellen, die Parameter mit dem Schlüsselwort function akzeptieren. Ein beliebtes Problem für viele Anfänger besteht darin, dass Funktionen Argumente akzeptieren, die nicht durch Kommas, sondern durch Leerzeichen getrennt sind (wie Befehlszeilen-Dienstprogramme oder Cmdlets):

  1. : Ruft eine Funktion mit zwei Argumenten auf.

Diese Argumente können an in der Funktionsdeklaration angegebene Parameter gebunden werden. Auf sie kann auch über das Array $args zugegriffen werden.

  1. (, ): Ruft eine Funktion mit einem Argument auf, das ein Array aus zwei Elementen ist.

Mit PowerShell können Sie jede .NET-Methode aufrufen, indem Sie ihren Namespace in eckige Klammern () einschließen und dann ein Doppelpunktpaar (::) verwenden, um die statische Methode anzugeben. Zum Beispiel ::WriteLine("PowerShell") . Objekte werden mit dem Cmdlet „New-Object“ erstellt und ihnen können mit dem Cmdlet „Add-Member“ neue Eigenschaften hinzugefügt werden.

PowerShell bietet einen .NET-basierten Mechanismus zur Fehlerbehandlung. Im Fehlerfall werden Objekte mit Informationen zum Fehler ausgegeben (Exception-Objekt), die abgefangen werden Stichwort fangen. Das Fehlerverhalten ist jedoch konfigurierbar. Beispielsweise können Sie PowerShell so konfigurieren, dass die Ausführung stillschweigend fortgesetzt wird, wenn ein Fehler auftritt, ohne den Fehler abzufangen. In Version 2 von PowerShell wurde außerdem das Try-Catch-Finally-Konstrukt hinzugefügt.

In PowerShell geschriebene Skripte können zwischen Sitzungen in .PS1-Dateien gespeichert werden. Anschließend können Sie das gesamte Skript oder einzelne Funktionen daraus nutzen. Skripte und Funktionen werden wie Cmdlets verwendet, das heißt, sie können Befehle in einer Pipeline sein und ihnen können Parameter übergeben werden. Objekte können transparent zwischen Skripten, Funktionen und Cmdlets in einer Pipeline übergeben werden. Die Ausführung von PowerShell-Skripts ist jedoch standardmäßig deaktiviert und muss mit dem Cmdlet „Set-ExecutionPolicy“ aktiviert werden. PowerShell-Skripte können digital signiert werden, um ihre Integrität zu überprüfen.

PowerShell 2.0

Microsoft hat PowerShell 2.0 als Teil von Windows 7 und Windows Server 2008 R2 veröffentlicht. Auf diesen Systemen ist Windows PowerShell 2.0 vorinstalliert. Die Ausnahme ist der Modus Windows-Installationen Server 2008 R2 im Core-Modus, wobei PowerShell 2.0 manuell installiert werden kann. Für ältere Plattformen ist es als Teil des Windows Management Framework verfügbar. PowerShell 2.0 nimmt neben 240 neuen Cmdlets einige Änderungen an der Skriptsprache und der Einbettungs-API vor.

Teilliste der neuen Funktionen in PowerShell 2.0:

  • PowerShell-Remoting. Mithilfe der WS-Verwaltung können Sie mit PowerShell 2.0 Skripte und Cmdlets aufrufen Remote-Maschinen(auch auf mehreren gleichzeitig), verfolgen den Status ihrer Ausführung und erhalten Ergebnisse in Form von Objekten (durch Serialisierung – Deserialisierung). Es ist auch möglich, interaktive Sitzungen und Sitzungen mit eingeschränkter Funktionalität einzurichten.
  • Hintergrundarbeit. Möglichkeit, Befehlssequenzen asynchron aufzurufen. Jobs können auf einem lokalen Computer oder auf mehreren Remotecomputern ausgeführt werden. Jobs können keine interaktiven Cmdlets verwenden.
  • Transaktionen. Ermöglichen Sie Cmdlet- und Anbieterentwicklern die Implementierung von Transaktionsvorgängen. PowerShell 2.0 umfasst Cmdlets zum Initiieren, Festschreiben und Zurücksetzen von Transaktionen sowie Funktionen zum Verwalten und Verwenden von Transaktionen in Cmdlets und Anbietern.
  • Erweiterte Funktionen. Die Möglichkeit, vollwertige Cmdlets nur mit PowerShell selbst zu entwickeln.
  • Stufenbare Pipelines. Ermöglicht dem Benutzer zu steuern, ob die Funktionen BeginProcessing(), ProcessRecord() und EndProcessing() aufgerufen werden, wenn das Cmdlet aufgerufen wird.
  • Module Ermöglichen Sie Skriptautoren und Administratoren, PowerShell-Skripte zu organisieren und in eigenständige Module zu packen. Code aus einem Modul wird in seinem eigenen unabhängigen Kontext ausgeführt und hat keinen Einfluss auf die Umgebung außerhalb des Moduls. Mithilfe eines Skripts können Module eine begrenzte Umgebung deklarieren. Module können öffentliche und private Funktionen und Variablen enthalten.
  • Datensprache. Eine Teilmenge von PowerShell, mit der Sie Datendefinitionen vom ausführbaren Skriptcode trennen und lokalisierte Zeichenfolgen zur Laufzeit in Ihr Skript importieren können.
  • Skripte debuggen. Möglichkeit, Haltepunkte festzulegen Haltepunkte) in Skripten oder PowerShell-Funktionen. Haltepunkte können für Zeilen, Spalten, Befehle oder Lese- und/oder Schreibvorgänge für Variablen festgelegt werden. Es gibt Cmdlets zum Setzen und Überwachen von Haltepunkten in Skripten.
  • Vielseitigkeit. Mit dieser Funktion können Sie beim Auftreten von Verwaltungs- oder Systemereignissen lauschen, umleiten und entsprechende Maßnahmen ergreifen. Durch Eventing können PowerShell-Hosts über Zustandsänderungen in verwalteten Objekten benachrichtigt werden. Ermöglicht Skripten außerdem, ObjectEvents, PSEvents und WmiEvents zu abonnieren und diese synchron und asynchron zu verarbeiten.
  • Windows PowerShell Integrated Scripting Environment (ISE). PowerShell 2.0 enthält eine grafische Shell für die Sprache, die einen integrierten Debugger, Syntaxhervorhebung und automatische Befehlsvervollständigung umfasst. Mit der Shell können Sie mehrere unabhängige PowerShell-Konsolen mit vollständiger Unicode-Unterstützung in einer Oberfläche mit Registerkarten ausführen. Dank Remote-Execution-Unterstützung können einige Konsolen auch auf anderen Computern ausgeführt werden. Darüber hinaus können Sie mit ISE nur ausgewählte Teile von Skripten ausführen, es enthält einen integrierten Editor und ermöglicht die Erweiterung und Bereicherung der Benutzeroberfläche mithilfe von PowerShell.
  • BITS Transfer – integrierte Unterstützung für die Dateiübertragung über das Netzwerk mit Priorisierung, Multithreading, Wiederaufnahme und asynchronem Betrieb basierend auf der Background Intelligent Transfer Service-Technologie.
  • Viele neue Cmdlets, darunter beispielsweise Out-GridView, mit dem Sie Pipeline-Ergebnisse in einer grafischen Tabelle (basierend auf WPF) mit Sortier- und Sofortsuchfunktionen anzeigen können.
  • Neue Operatoren -Split, -Join und Substitutionsoperator (@).
  • Fehlerbehandlung mit Try-Catch-Finally. Im Gegensatz zu anderen .NET-Sprachen können Sie in PowerShell mehrere Ausnahmetypen für einen einzelnen Catch-Block angeben.
  • Kommentare blockieren. PowerShell 2.0 unterstützt Blockkommentare (zusätzlich zu vorhandenen Zeilenkommentaren) mit<# и #>als Begrenzer.
  • Neue APIs hinzugefügt verschiedene Möglichkeiten, von mehr Kontrolle über den PowerShell-Parser bis hin zur Möglichkeit, begrenzte Sitzungen zu erstellen. eingeschränkter Runspace), in dem Sie nur einen begrenzten Satz von PowerShell-Anweisungen und -Befehlen ausführen können.

Vergleich von Cmdlets mit ähnlichen Befehlen

Die folgende Tabelle enthält eine Auswahl der in PowerShell enthaltenen Cmdlets und hebt die ähnlichsten Befehle anderer bekannter Befehlszeilen-Shells hervor.

Es ist darauf hinzuweisen, dass dieser Tisch dient nur zur oberflächlichen Referenz; es deckt nicht alle Fähigkeiten der vorgestellten Shells ab.

Windows PowerShell
(Cmdlet)
Windows PowerShell
(Alias)
cmd.exe/COMMAND.COM
(MS-DOS, Windows, OS/2 usw.)
Bash
(Unix, BSD, Linux, Mac OS X usw.)
Beschreibung
Standort abrufen gl, pwd pwd Zeigt das aktuelle Arbeitsverzeichnis an
Ort festlegen sl, cd, chdir , chdir Ändert das aktuelle Verzeichnis
Clear-Host cls, klar cls klar Löscht den Bildschirm
Copy-Item cpi, kopieren, cp Kopieren Kopiert eine oder mehrere Dateien oder einen Verzeichnisbaum (PowerShell kann auch Objekte von anderen Datenanbietern kopieren)
Hilfe bekommen Hilfe, Mann helfen Mann Befehlshilfe
Gegenstand entfernen ri, del, löschen, rmdir, rd, rm del, löschen, rmdir, rmdir Löscht eine Datei/ein Verzeichnis (oder ein anderes Element in PowerShell-Datenanbietern).
Element umbenennen rni, ren ren, umbenennen Benennt eine Datei/ein Verzeichnis um
Objekt verschieben mi, bewegen, mv bewegen Verschiebt eine Datei/ein Verzeichnis an einen neuen Speicherort
Get-ChildItem gci, dir, ls dir Listet alle Dateien/Verzeichnisse im aktuellen Verzeichnis auf
Schreibausgabe Echo, schreibe Echo Echo Druckt Zeichenfolgen und Variablen in die Standardausgabe
Pop-Location popd popd popd Ändert das aktuelle Verzeichnis in das Verzeichnis, das zuletzt auf den Stapel verschoben wurde
Push-Standort gedrückt gedrückt gedrückt Schiebt das aktuelle Verzeichnis auf den Stapel
Set-Variable sv, eingestellt Satz Satz Einen Variablenwert festlegen/eine Variable erstellen
Get-Content gc, Typ, Kat Typ Katze Ruft den Inhalt einer Datei ab
Select-String finden, findstr grep Zeigt Zeilen an, die einer Bedingung entsprechen
Get-Prozess GPS, ps Tlist, Aufgabenliste Listet alle laufenden Prozesse auf
Stop-Prozess sps, töten töten, taskkill töten Stoppt einen laufenden Prozess
Abschlagobjekt T-Stück n / A T-Stück Übergibt Eingabedaten an eine Datei oder Variable und leitet sie dann über die Pipeline weiter

siehe auch

  • PowerShell ISE

Anmerkungen

Literatur

  • Popov A.V. Einführung in Windows PowerShell. - St. Petersburg. : BHV-Petersburg, 2009. - S. 464. - ISBN 978-5-9775-0283-2

Links

  • Windows PowerShell 1.0-Installationspaket-Download-Center für Windows Vista
  • Sprechen Sie über PowerShell-Funktionen und Skript-Grundlagen
  • Windows Management Framework (einschließlich PowerShell 2.0, WinRM 2.0 und BITS 4.0) für Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008
  • Blog „PowerShell und andere Skripte“ (Russisch)
  • (Russisch)
  • „Blog über Powershell und mehr“ (Russisch)
  • Kostenloses russisches Buch über PowerShell (Russisch)
  • Das zweite kostenlose englische Buch über PowerShell (Englisch)
  • Windows PowerShell-Website
  • Captain PowerShell und die Verwaltung der Zukunft (Russisch)