标题: [其他] [已解决]批处理如何截取一个命令的返回信息中的一部份? [打印本页]
作者: yuan_53770 时间: 2011-1-19 00:54 标题: [已解决]批处理如何截取一个命令的返回信息中的一部份?
比如:
C:\>sc qc WMDrive
[SC] 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部份,如何做到??
[ 本帖最后由 yuan_53770 于 2011-1-21 01:04 编辑 ]
作者: spark12 时间: 2011-1-19 02:34 标题: 可以这样提取
- for /f "tokens=1* delims=:" %%a in ('sc qc WMDrive^|find "BINARY_PATH_NAME"') do (set result=%%b)
- set result=%result:~1,-2%
复制代码
作者: yuan_53770 时间: 2011-1-21 01:08
谢谢楼上的帮助,我在dos联盟也求得一个答案,分享一下:- @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
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |