我写了一个脚本(正在运行),它杀死了所有与窗口标题 DEFENDINGSOFTWARE 不相等的任务。 原来如此:
Taskkill /FI “WINDOWTITLE ne DEFENDINGSOFTWARE*“ /F
我怎样才能保证他也不会杀死名称为“DEFENDINGSOFTWARE1”的任务?
最佳答案
*
已经解决了这个问题。
Taskkill /FI "WINDOWTITLE ne DEFENDINGSOFTWARE*" /F
应该杀死
DEFENDINGSOTWARE
DEFENDINGSOTWARE1
DEFENDINGSOTWARE2
DEFENDINGSOTWARE - some text
作为从 cmdline 执行的示例:
start "Test" pause
start "Test2" pause
您将有 2 个名为 cmd
的窗口,名为
Test - pause
Test2 - pause
现在运行
taskkill /FI "WINDOWTITLE EQ Test - pause"
这只会终止测试 - 暂停
但正在运行:
taskkill /FI "WINDOWTITLE EQ Test*"
终止标题以 Test
开头的所有窗口
此外,通过从 cmdline 运行 taskkill/?
您将看到过滤器开关帮助。
/FI filter Applies a filter to select a set of tasks.
Allows "*" to be used. ex. imagename eq acme*
下面是一些示例,我选择了最相关的示例来演示这种行为。
TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
关于batch-file - TASKKILL 和逻辑运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48640849/