【发布时间】:2017-03-27 21:55:53
【问题描述】:
我有一个场景,由于 Oracle 数据库,每个星期一早上都有一个进程卡住,所以我尝试创建一个 PowerShell 脚本来每周一运行,但无论是否出错,该进程仍然存在。
我试图用于“kill”的行是:
Get-Process -Name ez0* -ComputerName $server | Stop-Process -Force
尝试在没有-ComputerName 的情况下在本地执行此操作。
无论有没有-Force,我都没有从这条线上得到任何错误,它只是执行并继续前进。
只是做Get-Process 工作,我可以看到它,但我不能用 PowerShell 结束它。经过多次尝试,我远程登录到服务器并右键单击该进程并选择“结束任务”,效果很好。
这是一个奇怪的进程,因为它是最初 8 个进程中的一个(基于内核),当您停止服务时,除了一个被挂起的进程之外,所有进程都会被删除。
【问题讨论】:
-
试试
Invoke-Command $server -Scriptblock {Get-Process -name ez0* | Stop-Process -Force} -
使用版本 5+,当我尝试从通过管道的远程服务器停止进程对象时出现以下异常:
stop-process : Cannot stop process "notepad (11720)" because of the following err or: Feature is not supported for remote machines. -
我将在周一尝试 wmi 方式看看情况如何,但这不是远程问题,因为本地测试是相同的。
标签: powershell process terminate