Freigeben über


PowerShell.exe-Konsolenhilfe

Startet Windows PowerShell über die Befehlszeile eines anderen Tools, z. B. "Cmd.exe".

Syntax

PowerShell[.exe]
       [-PSConsoleFile <file> | -Version <version>]
       [-EncodedCommand <Base64EncodedCommand>]
       [-ExecutionPolicy <ExecutionPolicy>]
       [-File <filePath> <args>]
       [-InputFormat {Text | XML}] 
       [-NoExit]
       [-NoLogo]
       [-NonInteractive] 
       [-NoProfile] 
       [-OutputFormat {Text | XML}] 
       [-Sta]
       [-WindowStyle <style>]
       [-Command { - | <script-block> [-args <arg-array>]
                     | <string> [<CommandParameters>] } ]

PowerShell[.exe] -Help | -? | /?

Parameter

-EncodedCommand

Akzeptiert eine Base 64-codierte Zeichenfolgenversion eines Befehls. Senden Sie mit diesem Parameter Befehle an Windows PowerShell, die komplexe Anführungszeichen oder geschweifte Klammern erfordern.

-ExecutionPolicy

Legt die Standardausführungsrichtlinie für die Sitzung fest. Dieser Parameter ändert nicht die in der Registrierung festgelegte Windows PowerShell-Ausführungsrichtlinie.

-File

Führt das angegebene Skript aus. Geben Sie den Skriptdateipfad und Parameter ein.

-InputFormat

Beschreibt das Format von an Windows PowerShell gesendeten Daten. Gültige Werte sind "Text" (Textzeichenfolgen) oder "XML" (serialisiertes CLIXML-Format).

-NoExit

Kein Beenden nach ausgeführten Startbefehlen.

Blendet beim Start die Copyrightinformationen aus.

-NonInteractive

Dem Benutzer wird keine interaktive Eingabeaufforderung angezeigt.

-NoProfile

Das Windows PowerShell-Profil wird nicht geladen.

-OutputFormat

Bestimmt, wie die Ausgabe von Windows PowerShell formatiert wird. Gültige Werte sind "Text" (Textzeichenfolgen) oder "XML" (serialisiertes CLIXML-Format).

-PSConsoleFile

Lädt die angegebene Windows PowerShell-Konsolendatei. Erstellen Sie eine Konsolendatei mit dem Cmdlet Export-Console in Windows PowerShell.

-Sta

Startet die Shell mit einem Singlethread-Apartment.

-Version

Startet die angegebene Version von Windows PowerShell. Geben Sie mit dem Parameter eine Versionsnummer ein, z. B. "-version 1.0".

-WindowStyle

Legt den Fensterstil auf "Normal", "Minimized", "Maximized" oder "Hidden" fest.

-Command

Führt die angegebenen Befehle (und alle Parameter) so aus, als wären sie an der Windows PowerShell-Eingabeaufforderung eingegeben worden. Dann wird die Ausführung beendet, sofern nicht "NoExit" angegeben wurde. Der Wert von "Command" kann "-", eine Zeichenfolge oder ein Skriptblock sein.

Wenn der Wert von "Command" gleich "-" ist, wird der Befehlstext aus der Standardeingabe gelesen.

Skriptblöcke müssen in geschweifte Klammern ({}) eingeschlossen werden. Einen Skriptblock können Sie nur angeben, wenn "PowerShell.exe" in Windows PowerShell ausgeführt wird. Die Ergebnisse des Skripts werden als deserialisierte XML-Objekte und nicht als Liveobjekte an die übergeordnete Shell zurückgegeben.

Wenn der Wert von "Command" eine Zeichenfolge ist, muss "Command" der letzte Parameter im Befehl sein, da alle nach dem Befehl eingegebenen Zeichen als Befehlsargumente interpretiert werden.

Um eine Zeichenfolge zu schreiben, die einen Windows PowerShell-Befehl ausführt, verwenden Sie folgendes Format:

"& {<command>}"

Hierbei geben die Anführungszeichen eine Zeichenfolge an, und der Aufrufoperator (&) verursacht die Ausführung des Befehls.

-Help, -?, /?

Zeigt diese Meldung an. Wenn Sie einen "PowerShell.exe"-Befehl in Windows PowerShell eingeben, stellen Sie den Befehlsparametern einen Bindestrich (-) und keinen Schrägstrich (/) voran. In "Cmd.exe" können Sie einen Bindestrich oder einen Schrägstrich verwenden.

BEISPIELE

PowerShell -PSConsoleFile sqlsnapin.psc1

PowerShell -version 1.0 -NoLogo -InputFormat text -OutputFormat XML

PowerShell -Command {Get-EventLog -LogName security}

PowerShell -Command "& {Get-EventLog -LogName security}"

# To use the -EncodedCommand parameter:
$command = "dir 'c:\program files' "
$bytes = [System.Text.Encoding]::Unicode.GetBytes($command)
$encodedCommand = [Convert]::ToBase64String($bytes)
powershell.exe -encodedCommand $encodedCommand