yyz2191958 发表于 2023-1-14 09:21:48

【已解决】除了本身,检测有无其它cmd.exe进程

本帖最后由 yyz2191958 于 2023-1-14 12:45 编辑

完美解决了:
::【检测cmd.exe进程:如果有2个以上(含2个),继续检测。1个,则启动“抓取弹出框文字.exe”】
@echo off
:C
timeout /t 1
for /f %%i in ('tasklist /fi "imagename eq cmd.exe" ^| find /c /i "cmd.exe"') do (
    if %%i gtr 2 (
      goto :C
    )
)
start"" "D:\1绿色软件\多媒体\抓图抓滚动\抓取弹出框文字.exe"
exit




求批处理:除了本身,检测有无其它cmd.exe进程

***************************
需求:
除了本身,还有其它cmd.exe进程,继续检测
除了本身,没有其它cmd.exe进程,跳到:A

谢谢




sunsea 发表于 2023-1-14 10:50:03

本帖最后由 sunsea 于 2023-1-14 10:52 编辑

@echo off
setlocal ENABLEDELAYEDEXPANSION
rem for工作时会创建一个新的cmd子进程解释命令,起到管道效果,所以计数从-1开始
set counter=-1

for /f "delims=, skip=1" %%i in ('tasklist /fi "IMAGENAME eq cmd.exe" /FO CSV') do set /a counter=!counter!+1

if !counter! LEQ 1 goto :A
需要循环检测的话自己稍作修改便可,不过推荐加入延时否则cpu占用率太高。

slore 发表于 2023-1-14 11:18:39

设置一个特别的title判断,省cpu

yyz2191958 发表于 2023-1-14 12:40:26

完美解决了:
::【检测cmd.exe进程:如果有2个以上(含2个),继续检测。1个,则启动“抓取弹出框文字.exe”】
@echo off
:C
timeout /t 1
for /f %%i in ('tasklist /fi "imagename eq cmd.exe" ^| find /c /i "cmd.exe"') do (
    if %%i gtr 2 (
      goto :C
    )
)
start"" "D:\1绿色软件\多媒体\抓图抓滚动\抓取弹出框文字.exe"
exit

yc2428 发表于 2023-1-14 14:26:16

学习一下

1825208 发表于 2023-1-14 16:07:54

谢谢分享

yyz2191958 发表于 2023-1-14 16:46:29

1825208 发表于 2023-1-14 16:07
谢谢分享

不客气

2010laodu 发表于 2023-1-14 17:06:38

感谢分享

yyz2191958 发表于 2023-1-14 17:11:24

2010laodu 发表于 2023-1-14 17:06
感谢分享

12年,3025积分不多呀

adminkk 发表于 2023-1-16 08:45:15

大佬的世界么看不懂

yyz2191958 发表于 2023-1-16 15:10:32

adminkk 发表于 2023-1-16 08:45
大佬的世界么看不懂

慢慢看

adminkk 发表于 2023-1-17 10:04:30

yyz2191958 发表于 2023-1-16 15:10
慢慢看

好的,我慢慢学

nowayer 发表于 2023-12-6 17:02:40

页: [1]
查看完整版本: 【已解决】除了本身,检测有无其它cmd.exe进程