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

[已解决]判断线程数执行操作的批处理

本帖最后由 樵夫 于 2017-8-22 11:59 编辑

具体报酬:10元人民币。
支付方式:支付宝,QQ红包。
联系方式:QQ,私聊。
有效期限:2017年08月27日之前。

需求描述:
(1)系统环境
windows Server 2008

(2)想要实现的功能的具体描述
实现的功能:
判断进程正在使用的线程数大于指定的值则调用一个其他路径下的批处理

具体描述:
判断已知的在运行中的进程名(如:chrome.exe)当前正使用的线程数如果大于1500(windows系统任务管理器中的线程数),则执行调用另外一个路径下的批处理,如果不符合条件则不执行任何操作

(3)测试数据及期待结果
线程数需要与windows系统任务管理器中的线程数对的上

(4)其它补充信息
说明:
已经试过以下命令,在windows Server 2008执行无法显示结果。在win8中可以显示结果但是线程数与任务管理器中的线程数对不上。
请不要直接拿下面脚本的回复,谢谢!

===============================================
@echo off
for /f %%i in ('tasklist ^|find "chrome.exe"') do (
        set/a n+=1
)
echo %n%

  1. @echo off
  2. set s=0
  3. for /f "delims=" %%a in ('wmic PROCESS where "name='chrome.exe'" get ThreadCount /value^|find "="') do (
  4.     set %%a
  5.     set /a s+=ThreadCount
  6. )
  7. echo;%s%
  8. if %s% gtr 1500 call "另一个批处理"
  9. pause
复制代码

TOP

返回列表