繁体   English   中英

挂起指定文件夹中的所有进程

[英]Suspend all processes from a specified folder

我想做的是从Windows 7中的单个文件夹中挂起多个进程。我可以使用以下命令获取此类过程的列表:

WMIC PROCESS WHERE 'ExecutablePath like "c:\\users%"' GET

要么

WMIC PROCESS WHERE 'ExecutablePath like "c:\\users%"' LIST

然后,我需要暂停这些命令返回的过程。 我可以使用PsSuspend软件来做到这一点 因此,我唯一麻烦的是遍历列表并为每个进程执行此命令。 在bash脚本中很容易做到,但是如何在Windows中轻松实现呢? 我更喜欢使用.bat文件或类似的文件,因此不会太复杂。

这是一个例子:

@Echo Off
SetLocal EnableExtensions

Rem Command
(Set WC=Process)
Rem Filter
(Set WF=ExecutablePath Like)
Rem Value
(Set FV=%UserProfile%)
Rem Output
(Set RO=ProcessID)
Rem Run
(Set RC=PsSuspend)

For /F "UseBackQ Skip=1" %%A In (
    `WMIC %WC% Where "%WF% '%FV:\=\\%%%'" Get %RO%`) Do For %%B In (%%A
    ) Do %RC% %%B

我将第9行更改为%UserProfile% ,如果您认为我做错了 ,则可以将其更改回C:\\ Users

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM