我可以在 Power Automate Desktop 上使用 "Run PowerShell script" 操作将 powershell 版本更改为 7 吗?
Can I change powershell version to 7 with "Run PowerShell script" action on Power Automate Desktop?
我可以在“运行 PowerShell 脚本”操作中将 powershell 版本更改为 7 吗?
如果可以,怎么做?
我知道这个 post 但我找不到是否可以更改 PAD 执行的版本。
https://powerusers.microsoft.com/t5/Power-Automate-Desktop/Powershell-and-other-script-SUPPORTED-VERSION/td-p/1501322
我已经安装了powershell version7。
我想在“Export-Csv”上使用“-UseQuotes”选项。
仅供参考,我的 PSV 版本在这里。
P版本 5.1.19041.1320
谢谢,
我还检查了有关 PAD 的注册表,但没有管理 powershell 的注册表
这有点难看,但可以完成工作。
我有这个非常基本的流程,它只是运行 PS 脚本并在消息框中输出结果。
将其放入 PowerShell 任务中,然后查看输出。
$psVersion = (Get-Host).Version.Major
if ($psVersion -ne 7) {
$processInfo = New-Object System.Diagnostics.ProcessStartInfo
$processInfo.FileName = "C:\Program Files\PowerShell\pwsh.exe"
$processInfo.RedirectStandardError = $true
$processInfo.RedirectStandardOutput = $true
$processInfo.UseShellExecute = $false
$processInfo.Arguments = $MyInvocation.MyCommand.Definition
$process = New-Object System.Diagnostics.Process
$process.StartInfo = $processInfo
$process.Start() | Out-Null
$process.WaitForExit()
$stdout = $process.StandardOutput.ReadToEnd()
$stderr = $process.StandardError.ReadToEnd()
Write-Host $stdout
} else {
# Your logic goes here!
Write-Host "PowerShell Version = $psVersion"
}
你应该得到这个...
本质上,它正在检查版本,如果不是版本 7,它将启动 PowerShell 7,然后检索输出。
记下 PS7 的文件路径,您可能需要更改它或简化它。我已经完成了完整路径以确保它有效。
我可以在“运行 PowerShell 脚本”操作中将 powershell 版本更改为 7 吗? 如果可以,怎么做?
我知道这个 post 但我找不到是否可以更改 PAD 执行的版本。 https://powerusers.microsoft.com/t5/Power-Automate-Desktop/Powershell-and-other-script-SUPPORTED-VERSION/td-p/1501322
我已经安装了powershell version7。 我想在“Export-Csv”上使用“-UseQuotes”选项。
仅供参考,我的 PSV 版本在这里。 P版本 5.1.19041.1320
谢谢,
我还检查了有关 PAD 的注册表,但没有管理 powershell 的注册表
这有点难看,但可以完成工作。
我有这个非常基本的流程,它只是运行 PS 脚本并在消息框中输出结果。
将其放入 PowerShell 任务中,然后查看输出。
$psVersion = (Get-Host).Version.Major
if ($psVersion -ne 7) {
$processInfo = New-Object System.Diagnostics.ProcessStartInfo
$processInfo.FileName = "C:\Program Files\PowerShell\pwsh.exe"
$processInfo.RedirectStandardError = $true
$processInfo.RedirectStandardOutput = $true
$processInfo.UseShellExecute = $false
$processInfo.Arguments = $MyInvocation.MyCommand.Definition
$process = New-Object System.Diagnostics.Process
$process.StartInfo = $processInfo
$process.Start() | Out-Null
$process.WaitForExit()
$stdout = $process.StandardOutput.ReadToEnd()
$stderr = $process.StandardError.ReadToEnd()
Write-Host $stdout
} else {
# Your logic goes here!
Write-Host "PowerShell Version = $psVersion"
}
你应该得到这个...
本质上,它正在检查版本,如果不是版本 7,它将启动 PowerShell 7,然后检索输出。
记下 PS7 的文件路径,您可能需要更改它或简化它。我已经完成了完整路径以确保它有效。