PowerShell
Kör körbara
Sök…
Konsolapplikationer
PS> console_app.exe
PS> & console_app.exe
PS> Start-Process console_app.exe
GUI-applikationer
PS> gui_app.exe (1)
PS> & gui_app.exe (2)
PS> & gui_app.exe | Out-Null (3)
PS> Start-Process gui_app.exe (4)
PS> Start-Process gui_app.exe -Wait (5)
GUI-applikationer startar i en annan process och kommer omedelbart att återföra kontrollen till PowerShell-värden. Ibland behöver du applikationen för att avsluta behandlingen innan nästa PowerShell-uttalande måste köras. Detta kan uppnås genom att leda applikationsutgången till $ null (3) eller genom att använda Start-Process med -Wait-omkopplaren (5).
Konsolströmmar
PS> $ErrorActionPreference = "Continue" (1)
PS> & console_app.exe *>&1 | % { $_ } (2)
PS> & console_app.exe *>&1 | ? { $_ -is [System.Management.Automation.ErrorRecord] } (3)
PS> & console_app.exe *>&1 | ? { $_ -is [System.Management.Automation.WarningRecord] } (4)
PS> & console_app.exe *>&1 | ? { $_ -is [System.Management.Automation.VerboseRecord] } (5)
PS> & console_app.exe *>&1 (6)
PS> & console_app.exe 2>&1 (7)
Stream 2 innehåller System.Management.Automation.ErrorRecord-objekt. Observera att vissa applikationer som git.exe använder "felströmmen" för informationsändamål, som inte nödvändigtvis är fel alls. I det här fallet är det bäst att titta på utgångskoden för att avgöra om felströmmen ska tolkas som fel.
PowerShell förstår dessa strömmar: Output, Error, Warning, Verbose, Debug, Progress. Infödda applikationer använder vanligtvis bara dessa strömmar: Output, Error, Warning.
I PowerShell 5 kan alla strömmar omdirigeras till standardutgång / framgångsströmmen (6).
I tidigare PowerShell-versioner kan endast specifika strömmar omdirigeras till standardutgång / framgångsströmmen (7). I det här exemplet omdirigeras "felströmmen" till utgångsströmmen.
Avsluta koder
PS> $LastExitCode
PS> $?
PS> $Error[0]
Dessa är inbyggda PowerShell-variabler som ger ytterligare information om det senaste felet. $LastExitCode
är den slutliga utgångskoden för den senaste ursprungliga applikationen som kördes. $?
och $Error[0]
är den sista felregistreringen som genererades av PowerShell.