USB\ROOT_HUB\4&1A8F66BB&0 : USB Root Hub
USB\ROOT_HUB\4&2D491760&0 : USB Root Hub
USB\ROOT_HUB\4&467FDFE&0 : USB Root Hub
USB\ROOT_HUB\4&7D5B616&0 : USB Root Hub
USB\ROOT_HUB20\4&2556A5A7&0 : USB Root Hub
USB\VID_04A9&PID_106A\408Q9I : USB Printing Support
USB\VID_0A81&PID_0205\5&11CCBFD0&0&2 : USB Composite Device
USB\VID_0A81&PID_0205&MI_00\6&DE85D78&0&0000 : USB USB\VID_0A81&PID_0205&MI_01\6&DE85D78&0&0001 : USB USB\VID_0AC8&PID_307B\5&39E0BBF6&0&2 : USB PC Camera (ZS0211)
USB\VID_1130&PID_F211\5&11CCBFD0&0&1 : USB Composite Device
USB\VID_1130&PID_F211&MI_00\6&2BDBF2D1&0&0000 : USB Audio Device
USB\VID_1130&PID_F211&MI_03\6&2BDBF2D1&0&0003 : USB USB\VID_1130&PID_F211&MI_04\6&2BDBF2D1&0&0004 : USB 14 matching device(s) found.
请问如何提取这两行:
USB\VID_0A81&PID_0205\5&11CCBFD0&0&2 : USB Composite Device
USB\VID_1130&PID_F211\5&11CCBFD0&0&1 : USB Composite Device
然后赋值给变量 A 和 B ?
set A=VID_0A81&PID_0205
set B=VID_1130&PID_F211
请尽量不使用过渡文件,谢谢!
[ Last edited by chishingchan on 2008-1-17 at 04:52 AM ]
DEVCON FIND USB\*>ininin.txt
for /f "tokens=2 delims=\\" %%A in ('type ininin.txt^|findstr Composite') do set B="%%A"
for /f "tokens=2 delims=\\" %%A in ('type ininin.txt^|findstr Composite^|findstr ^/V %B% ') do set A="%%A"
echo %A%
echo %B%
pause
Originally posted by dooomer at 2008-1-18 11:57 AM:
只有2个变量的话,可以这么办:
DEVCON FIND USB\*>ininin.txt
for /f "tokens=2 delims=\\" %%A in ('type ininin.txt^|findstr Composite') do set B="%%A"
for /f ...
谢谢!符合题意!
以上代码改成如下:
@echo off
for /f "tokens=2 delims=\\" %%A in ('DEVCON FIND USB\* ^|findstr Composite') do set B="%%A"
for /f "tokens=2 delims=\\" %%A in ('DEVCON FIND USB\* ^|findstr Composite^|findstr ^/V %B%') do set A="%%A"
echo %A%
echo %B%
pause