Wat is PWSH.EXE? Lijst met PWSH-syntaxis die u kunt gebruiken

PowerShell is een van de krachtigste scripttools die Microsoft heeft gemaakt. In dit bericht zullen we delen wat PWSH.exe is , en een lijst met belangrijke PWSH-syntaxis(PWSH syntax) . Ik weet zeker dat velen van hen Windows PowerShell hebben gebruikt , maar PWSH is nu een platformonafhankelijke scripttool die werkt op Windows , macOS en Linux . Het wordt echter niet ondersteund op WSL , dwz het Windows-subsysteem(Windows Subsystem) op Linux , en een poging om PWSH in te stellen als de login-shell zal leiden tot onstabiele WSL .

Wat is PWSH.EXE?

PWSH

Voordat we beginnen, laten we één detail ophelderen. PWSH.EXE is de nieuwe naam voor PowerShell . Sinds versie 6 heet het PowerShell Core . Het werd eerder genoemd als powershell.exe , wat u moet hebben gezien geïnstalleerd in Windows (versie 5.1). Geen wonder dat elke keer dat u PowerShell in Windows start , u een bericht krijgt:

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

U kunt lezen over het verschil tussen PowerShell en PowerShell Core.(difference between PowerShell and PowerShell Core.)

Vandaag snel vooruit, PowerShell heeft versie 7 bereikt(PowerShell has reached version 7) , wat een grote verandering is ten opzichte van versie 6 en gebruikt .NET Core 3 in plaats van het .Net Framework . Als u het eens wilt proberen, leest u hoe u PowerShell 7.0 op Windows 10 installeert.(how to install PowerShell 7.0 on Windows 10.)

Belangrijke PWSH-syntaxis

-File | -f: Als u opdrachten in een scriptbestand hebt, kunt u dit als invoer gebruiken. U kunt indien van toepassing ook argumenten voor de bestanden gebruiken.

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

-Command | -c : Gebruik dit om een ​​commando of ScriptBlock uit te voeren . ScriptBlock is een set functies die is ingesloten in {}

pwsh -Command {Get-WinEvent -LogName security}

of

@'
"in"

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

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

-EncodedCommand | -e | -ec : Gebruik dit als er complexe aanhalingstekens of accolades moeten worden gebruikt.

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

-Login | -l: Op Linux en macOS start PowerShell als een login-shell, met /bin/sh om login-profielen zoals /etc/profile en ~/.profile uit te voeren. Het is niet van toepassing op Windows .

U moet het absolute pad controleren dat wordt vermeld onder /etc/shells. U kunt het  hulpprogramma chsh gebruiken om de shell van uw huidige gebruiker op pwsh in te stellen.

chsh -s /usr/bin/pwsh

-InstellingenBestand | -instellingen

Als u de globale instellingen wilt overschrijven met lokale projectinstellingen, dan kunt u met deze optie het instellingenbestand specificeren. De systeembrede instellingen zijn beschikbaar in powershell.config.json.

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

Volledige lijst met PWSH-syntaxis

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 | -? | /?

Als u meer informatie nodig heeft, gaat u naar docs.microsoft.com.



About the author

Ik ben een computerwetenschapper met meer dan 10 jaar ervaring in softwareontwikkeling en beveiliging. Ik heb een sterke interesse in Firefox-, Chrome- en Xbox-games. Ik ben vooral geïnteresseerd in hoe ik ervoor kan zorgen dat mijn code veilig en efficiënt is.



Related posts