Board logo

标题: [已解决]批处理taskkill筛选器模糊筛选 [打印本页]

作者: ice-g    时间: 2008-8-13 06:00     标题: [已解决]批处理taskkill筛选器模糊筛选

我写了个批处理代码

随便拿 svchost.exe来举例吧

代码如下:

:kill
taskkill /f /FI "IMAGENAME eq svc*"

这样可以使用,
但是我要是想把后面的当作关键字的话,代码似乎就行不通了
taskkill /f /FI "IMAGENAME eq *ost.exe"

请教下各位 这是为什么 有没什么解决方法 谢谢

[ 本帖最后由 ice-g 于 2008-8-15 20:02 编辑 ]
作者: pusofalse    时间: 2008-8-13 06:40

似乎没有别的好的方法。
作者: Batcher    时间: 2008-8-13 09:11

  1. @echo off
  2. for /f %%a in ('tasklist ^| findstr /i ost.exe') do (
  3.   taskkill /f /fi "imagename eq %%a"
  4. )
复制代码

作者: ice-g    时间: 2008-8-13 09:14

原帖由 Batcher 于 2008-8-13 09:11 发表
@echo off
for /f %%a in ('tasklist ^| findstr /i ost.exe') do (
  taskkill /f /fi "imagename eq %%a"
)




如果是中文的进程呢....
作者: 523066680    时间: 2008-8-13 10:43

好像tskill 命令可以……
不过……功能比较少
作者: fastslz    时间: 2008-8-13 12:46

  1. wmic Process Where "Name  like '%ost.exe'" Get CommandLine
  2. wmic Process Where "Name  like '%中文.exe'" Get CommandLine
复制代码

作者: fastslz    时间: 2008-8-13 12:54

Get CommandLine        包含进程绝对路径及运行参数
Get ExecutablePath       包含进程绝对路径
Get Name                        包含进程文件名
Get Handle                      包含进程PID
Get ExecutablePath,Handle包含进程绝对路径和进程PID

关键词还可以这样玩法,自己掌握吧
  1. wmic Process Where "Name like '%s%v%c%h%o%s%t%.exe'" Get ExecutablePath,Handle
复制代码

[ 本帖最后由 fastslz 于 2008-8-13 13:15 编辑 ]
作者: ice-g    时间: 2008-8-14 00:38

没看明白

不可能有通配符"*"或者其他代替的写法吗

只能这样一个个去试?
作者: Batcher    时间: 2008-8-14 23:25     标题: 回复 8楼 的帖子

通配符一定要用星号吗?6楼的百分号不行吗?
作者: ice-g    时间: 2008-8-15 02:02

9L帮我解释下 6L的 那句

wmic Process Where "Name  like '%中文.exe'" Get CommandLine

是什么意思吧

谢谢谢谢谢!!!!
作者: Batcher    时间: 2008-8-15 03:00

10L先自己看看帮助吧
wmic /?
wmic process /?
作者: ice-g    时间: 2008-8-15 20:01

明白 7 L 的意思了

可是我是想模糊搜索一类的进程  他们进程名有部分是一样的

可能是我1L形容和举例不太贴切吧


taskkill /FI "MODULES eq *.dll"

我试了下 这样使用比较合适 *为具体dll名




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2