Vad är PWSH.EXE? Lista över PWSH-syntax du kan använda

PowerShell är ett av de mest kraftfulla skriptverktygen som Microsoft har skapat. I det här inlägget kommer vi att dela vad som är PWSH.exe och en lista över viktig PWSH-syntax . Jag är säker på att många av dem har använt Windows PowerShell , men PWSH är nu ett skriptverktyg för flera plattformar som fungerar på Windows , macOS och Linux . Det stöds dock inte på WSL , dvs. Windows SubsystemLinux , och ett försök att ställa in PWSH som inloggningsskal kommer att leda till instabil WSL .

Vad är PWSH.EXE?

PWSH

Innan vi börjar, låt oss reda ut en detalj. PWSH.EXE är det nya namnet för PowerShell . Sedan version 6 heter den PowerShell Core . Det hette tidigare powershell.exe som du måste ha sett installerat i Windows (version 5.1). Inte konstigt att varje gång du startar PowerShell i Windows får du ett meddelande:

“Try the new cross-platform PowerShell https://aka.ms/pscore6.”

Du kan läsa om skillnaden mellan PowerShell och PowerShell Core.(difference between PowerShell and PowerShell Core.)

Snabbspola framåt idag har PowerShell nått version 7(PowerShell has reached version 7) vilket är en stor förändring jämfört med version 6 och använder .NET Core 3 istället för .Net Framework . Om du vill ge det ett försök, lär dig hur du installerar PowerShell 7.0 på Windows 10.(how to install PowerShell 7.0 on Windows 10.)

Viktig PWSH-syntax

-File | -f: Om du har kommandon i en skriptfil kan du använda den som indata. Du kan också argumentera för filerna när det är tillämpligt.

pwsh -File .\test.ps1 -TestParam $env:windir

-Command | -c : Använd detta för att köra ett kommando eller ScriptBlock . ScriptBlock är en uppsättning funktioner som ingår i {}

pwsh -Command {Get-WinEvent -LogName security}

eller

@'
"in"

"hi" |
% { "$_ there" }

"out"
'@ | powershell -NoProfile -Command -

-EncodedCommand | -e | -ec : Använd det här när det finns ett behov av att använda komplexa citattecken eller hängslen.

$command = 'dir "c:\program files" '
$bytes = [System.Text.Encoding]::Unicode.GetBytes($command)
$encodedCommand = [Convert]::ToBase64String($bytes)
pwsh -encodedcommand $encodedCommand

-Login | -l: Linux och macOS, startar PowerShell som ett inloggningsskal, med /bin/sh för att köra inloggningsprofiler som /etc/profile och ~/.profile. Det är inte tillämpligt på Windows .

Du måste verifiera den absoluta sökvägen listad under /etc/shells. Du kan använda  chsh- verktyget för att ställa in din nuvarande användares skal till pwsh.

chsh -s /usr/bin/pwsh

-SettingsFile | -inställningar

Om du vill skriva över de globala inställningarna med lokala projektinställningar kan du ange inställningsfilen med det här alternativet. De systemomfattande inställningarna är tillgängliga i powershell.config.json.

pwsh -SettingsFile c:\myproject\powershell.config.json

Komplett lista över PWSH-syntax

pwsh[.exe]
[[-File] <filePath> [args]]
[-Command { - | <script-block> [-args <arg-array>]
| <string> [<CommandParameters>] } ]
[-ConfigurationName <string>]
[-CustomPipeName <string>]
[-EncodedCommand <Base64EncodedCommand>]
[-ExecutionPolicy <ExecutionPolicy>]
[-InputFormat {Text | XML}]
[-Interactive]
[-Login]
[-MTA]
[-NoExit]
[-NoLogo]
[-NonInteractive]
[-NoProfile]
[-OutputFormat {Text | XML}]
[-SettingsFile <SettingsFilePath>]
[-STA]
[-Version]
[-WindowStyle <style>]
[-WorkingDirectory <directoryPath>]

pwsh[.exe] -h | -Help | -? | /?

Om du behöver mer information kan du besöka docs.microsoft.com.



About the author

Jag är en mjukvarugranskare och trådlös ingenjör med över 10 års erfarenhet inom området. Jag är specialiserad på att granska mobila applikationer och mjukvara, samt att hjälpa kunder att optimera sina nätverk. Genom mina recensioner kan jag hjälpa dig att fatta välgrundade beslut om vilka produkter du ska använda, hur du kan förbättra ditt arbetsflöde med mera. Mina färdigheter inkluderar utmärkt skriftlig och muntlig kommunikation, problemlösning, stark teknisk kunskap och en känsla för detaljer. Jag är även skicklig på att arbeta självständigt och samarbeta i projekt.



Related posts