gpt4 book ai didi

非交互模式下的 Powershell

转载 作者:行者123 更新时间:2023-12-03 12:49:55 38 4
gpt4 key购买 nike

我使用 Octopus 进行部署。我对控制部署的 Powershell 脚本之一有问题:

# stops running processes
$processes = @("Notepad",
"Firefox")
foreach ($process in $processes)
{
$prc = Get-Process -Name $process -ErrorAction SilentlyContinue
if (-not($prc -eq $null))
{
Write-Host "Stopping " $prc.ProcessName
Stop-Process -InputObject $prc -ErrorAction SilentlyContinue
}
}

我试图停止的程序不是您在上面的脚本中看到的程序,但它们代表了我正在尝试做的事情。现在我遇到的问题是它在一台服务器上运行良好,但在另一台服务器上运行良好。在它不起作用的地方,我收到错误消息:

停止进程:Windows PowerShell 处于非交互模式。读取和提示功能不可用。

可以在 Powershell 3.0 上运行的脚本,在 Powershell 2.0 上不起作用的脚本。我还不能在任何地方升级到 Powershell 3.0,因为旧服务器运行的是 Windows Server 2003。我怎样才能让它在 PS 2.0 上运行?

最佳答案

运行 -Force :
Stop-Process -InputObject $prc -ErrorAction SilentlyContinue -Force
正如 C.B. 在评论中所建议的:-confirm:$false也应该工作。其理由如下:-Confirm是一个开关参数。如果您使用尾随冒号和值指定参数,则开关参数只能采用参数。

关于非交互模式下的 Powershell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16580723/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com