![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-23 13:29 |
共 47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,273 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [已解决]如何截取一个命令的返回信息中的一部份?? |
| 可打印版本 1,825 / 3 |
| 第1楼 yuan53770 | 发表于 2011-01-19 01:53 |
| 初级用户 发帖 40 积分 67 | |
|
[已解决]如何截取一个命令的返回信息中的一部份?? 比如
C:\>sc qc WMDrive GetServiceConfig SUCCESS SERVICE_NAME: WMDrive TYPE : 1 KERNEL_DRIVER START_TYPE : 4 DISABLED ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : \??\C:\WINDOWS\system32\drivers\WMDrive.sys LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : WMDrive DEPENDENCIES : RPCSS SERVICE_START_NAME : 以上是查询wmdrive服务的返回信息,我想截取其中的\??\C:\WINDOWS\system32\drivers\WMDrive.sys部份,如何做到?? [ Last edited by yuan53770 on 2011-1-21 at 02:06 ] |
|
| 第2楼 dooomer | 发表于 2011-01-19 11:54 |
| 初级用户 发帖 52 积分 109 | |
|
findstr 找到那一行,然后用for命令,以“ : ”为分隔符,取分隔符后第2位,即可。
|
|
| 第3楼 liion631818 | 发表于 2011-01-19 14:49 |
| 新手上路 发帖 11 积分 13 来自 上海 | |
|
@echo off
setlocal EnableDelayedExpansion for /f "tokens=1* delims=:" %%i in ('sc qc WMDrive') do ( set "binary=%%i" set binary=!binary: =! if "!binary!"=="BINARY_PATH_NAME" ( set "getPath=%%j" set getPath=!getPath:"=! goto show ) ) :show echo !getPath! pause |
|
| 第4楼 yuan53770 | 发表于 2011-01-21 02:06 |
| 初级用户 发帖 40 积分 67 | |
|
谢谢楼上的帮助,我在批处理之家也求得答案,分享一下:
for /f "tokens=1* delims=:" %%a in ('sc qc WMDrive^|find "BINARY_PATH_NAME"') do (set result=%%b) set result=%result:~1,-2% |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |