Scripting 监视powershell脚本的挂起实例

Scripting 监视powershell脚本的挂起实例,scripting,powershell,process,kill,Scripting,Powershell,Process,Kill,我正在编写一个Powershell脚本来完成一系列工作,完成后将作为一个计划任务运行。因此,当我开始运行脚本时,我希望能够检查一个较旧的实例是否仍处于活动状态,如果它存在,则杀死它 我想我会用这样的东西: $process = Get_Process | $name $process.kill 但是如何以简单的方式获取$name变量呢 有人有更好的建议吗? 顺致敬意, Gísli你为什么需要这个名字Get Process返回高保真度Process对象,您可以直接对其进行操作 要获取一个特定名称

我正在编写一个Powershell脚本来完成一系列工作,完成后将作为一个计划任务运行。因此,当我开始运行脚本时,我希望能够检查一个较旧的实例是否仍处于活动状态,如果它存在,则杀死它

我想我会用这样的东西:

$process = Get_Process | $name
$process.kill
但是如何以简单的方式获取$name变量呢

有人有更好的建议吗? 顺致敬意,
Gísli

你为什么需要这个名字
Get Process
返回高保真度
Process
对象,您可以直接对其进行操作

要获取一个特定名称的进程,请使用
$n=get process notepad
,然后执行
$n.kill()
将其杀死。如果确实需要再次检查名称,请执行
$n.name
。要查看可以使用哪些属性和方法,请尝试
$n | get member


并确保您阅读了手册:

您可以在windows计划任务配置中执行此操作。不过,设置取决于您使用的操作系统


编辑:也就是说,您可以将任务配置为在一段时间后(即下一个任务开始时)终止。

您确定没有办法阻止脚本挂起吗?我会专注于创建一个可靠的脚本,而不是终止进程。@Ryant-当然,我正试图正确地执行此操作,但我需要将其作为我的应用程序的安全网,因为它将在我无法访问的服务器上运行。这只是为了确保我不会堆积太多进程并耗尽服务器资源。这并不能解决@Gisli的问题。可能有多个powershell进程正在运行,脚本如何知道应该终止哪个进程?一个powershell.exe进程将用于脚本本身,一个可能是活动的控制台会话,另一个可能来自不同的任务,等等@Rynant-当然。我正在回答他关于get过程的具体问题。帮助他找到解决方案。stackoverflow的目的不是提供全部内容,以便OP能够完成。谢谢。这可能是一个选择,我必须与我的导师核实。我正在重写他用perl编写的一个脚本,他在其中有一个终止进程的函数。这可能是因为它必须在多个平台上运行。