Co to jest PWSH.EXE? Lista składni PWSH, których możesz użyć

PowerShell to jedno z najpotężniejszych narzędzi skryptowych, które stworzył Microsoft . W tym poście podzielimy się czym jest PWSH.exe oraz spisem ważnych składni PWSH(PWSH syntax) . Jestem pewien, że wielu użytkowników korzystało z Windows PowerShell , ale PWSH jest teraz wieloplatformowym narzędziem skryptowym, które działa w systemach Windows(Windows) , macOS i Linux . Jednak nie jest to obsługiwane w WSL , tj . Podsystemie Windows(Windows Subsystem) w systemie Linux(Linux) , a próba ustawienia PWSH jako powłoki logowania doprowadzi do niestabilnego WSL .

Co to jest PWSH.EXE?

PWSH

Zanim zaczniemy, wyjaśnijmy jeden szczegół. PWSH.EXE to nowa nazwa programu PowerShell . Od wersji 6 nazywa się PowerShell Core . Wcześniej nazywano go powershell.exe , który musiałeś zobaczyć zainstalowany w systemie Windows(Windows) (wersja 5.1). Nic dziwnego, że za każdym razem, gdy uruchamiasz PowerShell w systemie Windows(Windows) , pojawia się komunikat:

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

Możesz przeczytać o różnicy między PowerShell i PowerShell Core.(difference between PowerShell and PowerShell Core.)

Dzisiaj PowerShell osiągnął wersję 7(PowerShell has reached version 7) , która jest poważną zmianą w porównaniu z wersją 6 i używa .NET Core 3 zamiast .Net Framework . Jeśli chcesz spróbować, dowiedz się, jak zainstalować PowerShell 7.0 w systemie Windows 10.(how to install PowerShell 7.0 on Windows 10.)

Ważna składnia PWSH

-File | -f: Jeśli masz polecenia w pliku skryptu, możesz użyć go jako danych wejściowych. W stosownych przypadkach możesz również argumentować dla plików.

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

-Command | -c : Użyj tego, aby wykonać polecenie lub ScriptBlock . ScriptBlock to zestaw funkcji zawartych w {}

pwsh -Command {Get-WinEvent -LogName security}

lub

@'
"in"

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

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

-EncodedCommand | -e | -ec : Użyj tego, gdy istnieje potrzeba użycia złożonych cudzysłowów lub nawiasów klamrowych.

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

-Login | -l: W systemach Linux(Linux) i macOS uruchamia PowerShell jako powłokę logowania, używając /bin/sh do uruchamiania profili logowania, takich jak /etc/profile i ~/.profile. Nie dotyczy systemu Windows(Windows) .

Będziesz musiał zweryfikować ścieżkę bezwzględną wymienioną w /etc/shells. Możesz użyć  narzędzia chsh , aby ustawić powłokę bieżącego użytkownika na pwsh.

chsh -s /usr/bin/pwsh

-Plik ustawień | -ustawienia

Jeśli chcesz nadpisać ustawienia globalne lokalnymi ustawieniami projektu, możesz określić plik ustawień za pomocą tej opcji. Ustawienia ogólnosystemowe są dostępne w powershell.config.json.

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

Pełna lista składni PWSH

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

Jeśli potrzebujesz więcej informacji, odwiedź stronę docs.microsoft.com.



About the author

Jestem profesjonalnym technikiem komputerowym i posiadam ponad 10-letnie doświadczenie w branży. Specjalizuję się w tworzeniu Windows 7 i Windows Apps, a także w projektowaniu Fajnych Stron Internetowych. Mam ogromną wiedzę i doświadczenie w tej dziedzinie i byłbym cennym zasobem dla każdej organizacji, która chce rozwijać swoją działalność.



Related posts