中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 00:06
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 【已解决】文件内容处理 查看 695 回复 4
楼 主 【已解决】文件内容处理 发表于 2010-08-11 17:47 ·  中国 江苏 苏州 电信
初级用户
★★
积分 71
发帖 70
注册 2010-07-19 11:51
16年会员
UID 170757
性别 男
状态 离线
A文件内容如下:
Alerter 1 STOPPED
TlntSvr 1 STOPPED
lanmanworkstation 4 RUNNING
如果A文件中存在RUNNING,则提示有多少个在RUNNING,且列出是哪些在RUNNING。
请问如何实现?

@echo off
for %%c in ("RUNNING") do findstr /r /c:"\<%%~c\>" a.txt

[ Last edited by coldface on 2010-8-11 at 20:23 ]
2 发表于 2010-08-11 18:23 ·  中国 湖北 黄石 电信
中级用户
★★
积分 330
发帖 244
注册 2006-04-14 14:07
20年会员
UID 53823
性别 男
来自 湖北
状态 离线

@echo off&setlocal ENABLEDELAYEDEXPANSION
for /f "tokens=1-3" %%a in (a.txt) do (
if /i "%%c" equ "RUNNING" (
set /a sum+=1
set "#!sum!:=%%a"
)
)
echo.The Services below are runing(total:!sum!):
set #
pause


局限:服务名中不能含有半角空格
3 发表于 2010-08-11 20:23 ·  中国 江苏 苏州 电信
初级用户
★★
积分 71
发帖 70
注册 2010-07-19 11:51
16年会员
UID 170757
性别 男
状态 离线
好的 谢谢!
里面关于set的部分不是很理解,在论坛找了个解释,顺便共享下
http://www.cn-dos.net/forum/viewthread.php?tid=28273
对于那条set #不是很懂
4 发表于 2010-08-11 20:39 ·  中国 湖北 黄石 电信
中级用户
★★
积分 330
发帖 244
注册 2006-04-14 14:07
20年会员
UID 53823
性别 男
来自 湖北
状态 离线
set # 查看以#开始的所有环境变量
5 发表于 2010-08-11 20:54 ·  中国 江苏 苏州 电信
初级用户
★★
积分 71
发帖 70
注册 2010-07-19 11:51
16年会员
UID 170757
性别 男
状态 离线
哦 这样理解了 谢谢!
论坛跳转: