我想用批处理检测三个进程。如有其中一个,则运行指定的程序,没有则继续循环检测。谢谢你
1个回答
展开全部
有两个方法给你参考
第一:
@echo off
:search
tasklist|findstr "XDICT WINWORD OUTLOOK">1.txt
rem "XDICT WINWORD OUTLOOK" 分别是三个要找的进程,找到就写入到1.txt文件中
for /f "tokens=1-4 delims= " %%a in ('"dir 1.txt|findstr "个文件""') do set /a size=%%c
if %size% gtr 0 (start 要运行的程序&del 1.txt) else goto search
rem 如果三个进程一个都没有,那么1.txt文本的大小为0,批处理继续搜索。文本大小大于0时,则表示至少找到其中一个,于是运行指定的程序
第二
@echo off
:search
echo 00>1.txt
rem 如果一个进程都没找到,文本1.txt没有内容,下面找行号时会出错,所以先写入1行字符
tasklist|findstr "XDICT WINWORD OUTLOOK">>1.txt
rem "XDICT WINWORD OUTLOOK" 分别是三个要找的进程,找到就写入到1.txt文件中
for /f "delims=:" %%a in ('findstr /n .* 1.txt') do set a=%%a
if %a% lss 2 (goto search) else start 要运行的程序
del 1.txt
rem 如果找到的行数小于2,也说明没有找到需要的进程,批处理会循环找
第一:
@echo off
:search
tasklist|findstr "XDICT WINWORD OUTLOOK">1.txt
rem "XDICT WINWORD OUTLOOK" 分别是三个要找的进程,找到就写入到1.txt文件中
for /f "tokens=1-4 delims= " %%a in ('"dir 1.txt|findstr "个文件""') do set /a size=%%c
if %size% gtr 0 (start 要运行的程序&del 1.txt) else goto search
rem 如果三个进程一个都没有,那么1.txt文本的大小为0,批处理继续搜索。文本大小大于0时,则表示至少找到其中一个,于是运行指定的程序
第二
@echo off
:search
echo 00>1.txt
rem 如果一个进程都没找到,文本1.txt没有内容,下面找行号时会出错,所以先写入1行字符
tasklist|findstr "XDICT WINWORD OUTLOOK">>1.txt
rem "XDICT WINWORD OUTLOOK" 分别是三个要找的进程,找到就写入到1.txt文件中
for /f "delims=:" %%a in ('findstr /n .* 1.txt') do set a=%%a
if %a% lss 2 (goto search) else start 要运行的程序
del 1.txt
rem 如果找到的行数小于2,也说明没有找到需要的进程,批处理会循环找
汉坤(北京)流体控制技术有限公司
2023-06-12 广告
2023-06-12 广告
根据大数据评选,2022年电动执行器十大品牌名单有:1. 秀辉。2. 丹冠。3. 方威。4. 天津宝恒。5. 常辅股份。6. 新峰。7. 德博科技。8. 摩控。9. 科威纳。10. deyo。以上十大品牌是电动执行器行业的知名品牌,排名不分...
点击进入详情页
本回答由汉坤(北京)流体控制技术有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询