pwsh 指令是什麼? pwsh 介紹和安裝教學

PowerShell 其實有兩個版本,分別是 Windows PowerShell 和 PowerShell Core,後者是 Windows PowerShell 的一個分支,開源且跨平台。目前 Windows PowerShell 版本是 5.1 ,使用 .NET Framework v4.5 開發,而 PowerShell Core 版本號碼則是從 6.0 開始,現在最新是 7.2.5,使用 .NET Core 2.0 開發,兩者各自獨立。

補充: 2023-10-29 更新,現在最新版本是 7.3.9 ,使用 .NET 7.0.403 開發
延伸閱讀: .NET Framework 和 .NET Core 差別在哪裡?

Windows PowerShell 的安裝位置為 C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe (預設已安裝,資料夾位置都是 v1.0)
PowerShell Core 的安裝位置為 C:\Program Files\PowerShell\7\pwsh.exe (不會預設安裝,中間的 7 是版號,會隨版本更新而變動)

註: 兩者的執行檔名稱不同,分別為 powershell 和 pwsh,為了避免搞混,接下來我們就以這兩個來稱呼他們。

平時輸入 powershell 啟動的就是內建的 powershell.exe,而某些時候會用到的 pwsh 指令就是指 pwsh.exe,因為沒有安裝,所以在下指令時可能會出現下面這個錯誤:
  
pwsh : 無法辨識 'pwsh' 詞彙是否為 Cmdlet、函數、指令檔或可執行程式的名稱。請檢查名稱拼字是否正確,如果包含路徑的話,請
確認路徑是否正確,然後再試一次。
位於 線路:1 字元:1
+ pwsh
+ ~~~~
    + CategoryInfo          : ObjectNotFound: (pwsh:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException


又或是
  
'pwsh' 不是內部或外部命令、可執行的程式或批次檔。

安裝 pwsh

最簡單的方式就使在 Microsoft Store 裡面安裝 PowerShell, 點選這個連結即可安裝

如果是 windows 10的話,可以使用下面這行指令透過 winget 安裝
  
winget install --id Microsoft.Powershell --source winget


安裝完成後關閉所有指令視窗後再啟動即可使用 pwsh

至於 PowerShell 這個指令用的好好的,為什麼新版要改名為 pwsh 呢?就是因為隔壁的名稱都很簡短,例如 cmd, bash,而 PowerShell 要敲鍵盤 10 次才可以再輸入後面的指令,而其他縮寫都有人用了(PowerShell Core 是跨平台),所以才會取個這麼像密碼的縮寫(可以參考 Github 上的更名 Issues)

參考資料:
Github —— PowerShell
Installing PowerShell on Windows
Powershell: What is pwsh.exe
Get-PowerShellBlog

留言