PowerShell là một trong những công cụ viết kịch bản mạnh mẽ nhất mà Microsoft đã tạo ra. Trong bài đăng này, chúng tôi sẽ chia sẻ PWSH.exe là gì và danh sách cú pháp PWSH quan trọng . Tôi chắc rằng nhiều người sử dụng đã sử dụng Windows PowerShell, nhưng PWSH hiện là một công cụ tạo tập lệnh đa nền tảng hoạt động trên Windows, macOS và Linux. Tuy nhiên, nó không được hỗ trợ trên WSL, tức là Hệ thống con của Windows trên Linux và việc cố gắng đặt PWSH làm vỏ đăng nhập sẽ dẫn đến WSL không ổn định.
PWSH.EXE là gì?
Trước khi bắt đầu, hãy làm rõ một chi tiết. PWSH.EXE là tên mới của PowerShell. Kể từ phiên bản 6, nó được gọi là PowerShell Core. Trước đó nó được đặt tên là powershell.exe mà bạn phải thấy được cài đặt trong Windows (phiên bản 5.1). Không có gì lạ khi mỗi khi bạn khởi chạy PowerShell trong Windows, bạn nhận được thông báo:
“Hãy dùng thử PowerShell đa nền tảng mới https://aka.ms/pscore6.”
Bạn có thể đọc về sự khác biệt giữa PowerShell và PowerShell Core.
Ngày hôm nay, PowerShell đã đạt đến phiên bản 7, đây là một thay đổi lớn so với phiên bản 6 và sử dụng .NET Core 3 thay vì .Net Framework. Nếu bạn muốn dùng thử, hãy tìm hiểu cách cài đặt PowerShell 7.0 trên Windows 10.
Cú pháp PWSH quan trọng
-Tập tin | -f: Nếu bạn có các lệnh trong tệp script, bạn có thể sử dụng nó làm đầu vào. Bạn cũng có thể đối số cho các tệp khi có thể.
pwsh -File .\test.ps1 -TestParam $env:windir
-Kiểu lệnh | -c :Sử dụng điều này để thực thi một lệnh hoặc ScriptBlock. ScriptBlock là một tập hợp các chức năng kèm theo {}
pwsh -Command {Get-WinEvent -LogName security}
hoặc
@' "in" "hi" | % { "$_ there" } "out" '@ | powershell -NoProfile -Command -
-EncodedCommand | -e | -ec :Sử dụng điều này khi cần sử dụng dấu ngoặc kép phức tạp hoặc dấu ngoặc nhọn.
$command = 'dir "c:\program files" ' $bytes = [System.Text.Encoding]::Unicode.GetBytes($command) $encodedCommand = [Convert]::ToBase64String($bytes) pwsh -encodedcommand $encodedCommand
-Đăng nhập | -l: Trên Linux và macOS, khởi động PowerShell dưới dạng trình bao đăng nhập, sử dụng / bin / sh để thực thi các cấu hình đăng nhập như / etc / profile và ~ / .profile. Nó không áp dụng cho Windows.
Bạn sẽ phải xác minh đường dẫn tuyệt đối được liệt kê trong / etc / shell. Bạn có thể sử dụng chsh tiện ích để đặt trình bao của người dùng hiện tại của bạn thành pwsh.
chsh -s /usr/bin/pwsh
- SettingsFile | -cài đặt
Nếu bạn muốn ghi đè cài đặt chung bằng cài đặt dự án cục bộ, thì bạn có thể chỉ định tệp cài đặt bằng cách sử dụng tùy chọn này. Các cài đặt trên toàn hệ thống có sẵn trong powershell.config.json.
pwsh -SettingsFile c:\myproject\powershell.config.json
Danh sách đầy đủ cú pháp 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 | -? | /?
Nếu bạn cần thêm thông tin chi tiết, bạn có thể truy cập docs.microsoft.com.