[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] 批处理中如何获取cmd窗口的标题

我想写一个批处理文件A定时运行一下用来监测另一个批处理文件B是否在运行
在批处理文件B中设置了标题
title BBB

然后在批处理A中
tasklist /fi "windowtitle eq BBB"
得到的反馈总是 “信息: 没有运行的任务匹配指定标准。”
以前好像可以,现在用的win7 64位就不行了,求助

假设要监测的批处理为b.bat,在b.bat中有一行title bbb

使用start命令开新窗口运行b.bat
在本窗口中使用tasklist /fi "windowtitle eq bbb - b"监测是否运行

TOP

回复 1# ngd

taskkill /fi "WINDOWTITLE eq 管理员:  BBB"
#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

本帖最后由 luotexiaozh 于 2016-3-10 14:20 编辑

回复 1# ngd


    win7 的  cmd窗口名称变成: 管理员:  BBB
冒号后面多俩空格

TOP

回复 4# luotexiaozh
以前试过,不行诶,奇怪了

TOP

本帖最后由 happy886rr 于 2016-3-9 20:55 编辑

回复 5# ngd
我也win732位,也是一样的,至今无解。只能说,这个命令对win7sp1升级补丁的版本,可能不适用。
可以试试
  1. taskkill /f /im cmd.exe /fi "windowtitle eq 窗口名称"
复制代码

TOP

回复 5# ngd

使用这个工具检测标题文字,复制过来,看看是不是少空格什么
   
Microsoft Spy++
#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

回复 2# flyinnet9

-b 参数是什么意思

TOP

回复 7# ivor


    试过了,没有少空格,难道是空格作怪

TOP

回复 6# happy886rr


看这个title没有空格的就可以

TOP

回复 10# ngd
这好办加个*
tasklist /fi "windowtitle eq 特征字符*"

TOP

本帖最后由 ivor 于 2016-3-9 21:57 编辑

回复 9# ngd
  1. powershell -c "&{Get-Process | ? {$_.MainWindowTitle -like '*bbb'}}"
复制代码
结束进程版:
  1. powershell -c "&{Get-Process | ? {$_.MainWindowTitle -like '*bbb'} | Stop-Process}"
复制代码
#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

  1. tasklist /v |find "bbb"
复制代码
不是很简单的问题吗

TOP

回复 13# 522235677


    这样当然也可以,我就想知道上面的问题到底哪出错了

TOP

回复 14# ngd
  1. @echo off
  2. (echo;title bbb
  3. echo;pause)>xx.bat
  4. start "" xx.bat
  5. ping /n 3 0 >nul
  6. taskkill /fi "windowtitle eq 管理员:  bbb"
  7. pause
复制代码

TOP

返回列表