我正在编写一个 powershell 脚本,并希望利用 7.0 版本的 Powershell。特别是因为我需要访问 5.1 中没有的 CovertFrom-Json 的新功能。我的脚本有以下命令:get-host | select version
. 日志输出显示版本为 5.1。代理是 windows-2019(2020 在下拉菜单中不可用)。该任务是AWS Tools for Windows PowerShell 脚本任务。有没有办法让我的脚本在 DevOps 的环境中运行以利用 PS 7?
问问题
378 次
1 回答
2
你已经在那里安装了它。请比较一下:
pool:
vmImage: windows-latest
steps:
- powershell: $PSVersionTable.PSVersion
- pwsh: $PSVersionTable.PSVersion
- pwsh: |
'{ "key":"value1", "Key":"value2" }' | ConvertFrom-Json -AsHashtable
powershell
任务给你:
Major Minor Build Revision
----- ----- ----- --------
5 1 17763 1852
但是pwsh
:
Major Minor Patch PreReleaseLabel BuildLabel
----- ----- ----- --------------- ----------
7 1 3
但AWS Tools for Windows PowerShell Script
不支持 Powershell Core。看看这个,没有办法用 pwsh 替换 powershell,使第二个成为默认 shell。在这种情况下,我建议为AWS Tools for Windows PowerShell Script
但是,您仍然可以安装 AWS Toolkit 并从 pwsh 任务中使用它,如下所示:
- pwsh: Install-Module -name AWSPowerShell.NetCore -Scope CurrentUser -Force
- pwsh: |
Import-Module AWSPowerShell.NetCore
Get-Module -ListAvailable
Get-AWSPowerShellVersion
于 2021-06-03T23:04:02.633 回答