杀死emacs子进程windows 10

时间:2016-07-22 20:25:27

标签: powershell emacs process windows-10

有没有办法杀死Windows 10上emacs生成的所有子进程?我目前正在Windows 10上运行原生win32 emacs构建的劣质nodejs repl。通常当劣质shell挂起时,我可以杀死cmdproxy.exe进程或者生成的进程,并且emacs将成为" unhung&#34 ;。但是,我无法找到与劣质nodejs repl相关联的过程。

在nodejs-repl中,它命名进程" nodejs",但是当我检查powershell时,该进程并未列出。有没有其他方法可以找到emacs产生的所有进程?

3 个答案:

答案 0 :(得分:1)

我在Windows上做的是使用Sysinternals Process Explorer(https://technet.microsoft.com/en-us/sysinternals/bb896653。)在默认的Show Process Tree视图中,您可以看到其下面的emacs生成的所有进程,并杀死其中的任何一个或全部,留下emacs本身活着。

一般来说,Procexp和Sysinternals非常方便,如果你不使用它们就试一试。

如果您正在寻找命令行方式,我认为有点或Powershell黑客可能会这样做,但我从来没有发现它是必要的。

答案 1 :(得分:0)

这适用于任何平台:

(mapc #'kill-process (process-list))

答案 2 :(得分:0)

这是我如何执行此操作的示例:

$procid = Get-WmiObject win32_process | where {$_.Path -like '*OpenWindowsServiceExchangeSyncAgent*'} | select processid
stop-process -id $procid.processid

每个进程的子进程/子进程的路径应该不同。