我要做的是从Windows 7中的单个文件夹暂停多个进程。我可以使用以下命令获取此类进程的列表:
WMIC PROCESS WHERE 'ExecutablePath like "c:\\users%"' GET
或
WMIC PROCESS WHERE 'ExecutablePath like "c:\\users%"' LIST
然后我需要暂停这些命令返回的proccesses。我可以使用PsSuspend软件来做到这一点。所以,我遇到的唯一麻烦就是循环遍历列表并为每个进程执行此命令。在bash脚本中这很容易,但是如何在Windows中轻松完成?我宁愿使用.bat
文件或类似的东西,所以它不会过于复杂。
答案 0 :(得分:0)
以下是一个例子:
@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 。