我使用 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 上运行?