Название | PowerShell 7 und Windows PowerShell |
---|---|
Автор произведения | Tobias Weltner |
Жанр | Математика |
Серия | |
Издательство | Математика |
Год выпуска | 0 |
isbn | 9783960104803 |
Die folgenden Zeilen illustrieren, wie ein Befehlsaufruf von erfahrenen PowerShell-Anwendern zusammengestellt wird: Mit insgesamt sechs
PS> Get-Pro
PS> Get-Process –
PS> Get-Process -Name p
PS> Get-Process -Name powershell -F
PS> Get-Process -Name powershell -FileVersionInfo -E
PS> Get-Process -Name powershell -FileVersionInfo -ErrorAction I
PS> Get-Process -Name powershell -FileVersionInfo -ErrorAction Ignore
ProductVersion FileVersion FileName
-------------- ----------- --------
10.0.19041.561 10.0.19041.56... C:\Windows\System32\WindowsPowerShell\v1.0\powershell...
10.0.19041.561 10.0.19041.56... C:\Windows\System32\WindowsPowerShell\v1.0\powershell...
Syntax verstehen
Mit dem Parameter -? erhalten Sie bei allen Cmdlets eine Schnellhilfe. Darin ist immer die besonders wertvolle Syntax zu sehen. Wer die darin enthaltenen Informationen versteht, kann ihr fast alle wichtigen Details zu einem Befehl entnehmen.
Schauen wir uns das bei einem weiteren interessanten Cmdlet an:
PS> Get-ComputerInfo -?
NAME
Get-ComputerInfo
SYNOPSIS
Gets a consolidated object of system and operating system properties.
SYNTAX
Get-ComputerInfo [[-Property] <System.String[]>] [<CommonParameters>]
DESCRIPTION
The `Get-ComputerInfo` cmdlet gets a consolidated object of system and
operating system properties. This cmdlet was introduced in Windows PowerShell
5.1.
RELATED LINKS
Online Version: https://docs.microsoft.com/powershell/module/microsoft.powershel
l.management/get-computerinfo?view=powershell-7&WT.mc_id=ps-gethelp
REMARKS
To see the examples, type: "Get-Help Get-ComputerInfo -Examples"
For more information, type: "Get-Help Get-ComputerInfo -Detailed"
For technical information, type: "Get-Help Get-ComputerInfo -Full"
For online help, type: "Get-Help Get-ComputerInfo -Online"
Profitipp
Wollen Sie nur die Syntax eines Cmdlets erfahren, gibt es einen schnellen Trick (der allerdings nur bei »echten« Cmdlets funktioniert – einige nachträglich selbst nachgerüstete Cmdlets liefern stattdessen Kauderwelsch).
Dieses Beispiel zeigt ausschließlich die Syntax für das Cmdlet Get-Service:
PS> (Get-Service -?).Syntax
Get-Service [-ComputerName <System.String[]>] [-DependentServices] -DisplayName
<System.String[]> [-Exclude <System.String[]>] [-Include <System.String[]>]
[-RequiredServices] [<CommonParameters>]
Get-Service [-ComputerName <System.String[]>] [-DependentServices] [-Exclude <System.String[]>]
[-Include <System.String[]>]
[-InputObject <System.ServiceProcess.ServiceController[]>]
[-RequiredServices] [<CommonParameters>]
Get-Service [[-Name] <System.String[]>] [-ComputerName <System.String[]>]
[-DependentServices] [-Exclude <System.String[]>] [-Include <System.String[]>]
[-RequiredServices] [<CommonParameters>]
Ersetzen Sie den Cmdlet-Namen in den runden Klammern, um die Syntax für andere Cmdlets zu erfragen.
Kommen wir zurück zu Get-ComputerInfo. Die Syntax für Get-ComputerInfo sah so aus:
Get-ComputerInfo [[-Property] <System.String[]>] [<CommonParameters>]
Aus der Syntax kann man viele wertvolle Informationen ableiten, wenn man sie zu lesen versteht:
Freiwillige Angaben ([…]): Eckige Klammern kennzeichnen in der Syntax optionale (freiwillige) Angaben. Weil alle Argumente hinter Get-ComputerInfo in eckigen Klammern stehen, darf man das Cmdlet also ganz ohne Argumente aufrufen (und erhält dann die Computereinstellungen des eigenen Computers):
PS> Get-ComputerInfo
(…)
CsSystemType : x64-based PC
CsThermalState : Safe
CsTotalPhysicalMemory : 34116259840
CsPhysicallyInstalledMemory : 33554432
OsName : Microsoft Windows 10 Pro
OsVersion : 10.0.19042
OsBuildNumber : 19042
OsSystemDirectory : C:\WINDOWS\system32
OsSystemDrive : C:
OsWindowsDirectory : C:\WINDOWS
OsLocalDateTime : 21.12.2020 11:17:03
OsLastBootUpTime : 10.12.2020 17:22:54
OsUptime : 10.17:54:09.2494051
OsBuildType : Multiprocessor Free
(…)
Parameter (-…): Die Syntax listet alle unterstützten Parameter auf, die jeweils mit einem Bindestrich beginnen. Get-ComputerInfo kennt nur einen Parameter: -Property. Zusätzlich unterstützt das Cmdlet die sogenannten Common Parameters (die allgemeinen Parameter), die bei jedem Cmdlet vorhanden sind.
Datentypen (<…>): Hinter jedem Parameter steht in spitzen Klammern der Typ der Daten, die er erwartet: System.String steht für Text.
Listen erlaubt ([])? Weil der Datentyp mit [] abschließt, wissen Sie, dass es ein sogenanntes Array ist. Sie dürfen dem Parameter also einen Text oder auch mehrere kommaseparierte Texte übergeben.
Mit dem optionalen