Batch file 如何检查批次中是否存在带有特定标签的驱动器
我有这个驱动器:Batch file 如何检查批次中是否存在带有特定标签的驱动器,batch-file,Batch File,我有这个驱动器:KTEST(K:)-driveK标签为KTEST。我需要找出标签为KTEST的驱动器是否存在,无论是a:还是K:还是J:。在我的例子中,它以KTEST(K:)的形式存在,但是如果它说不存在,我该怎么做呢 抱歉,如果重复,无法真正了解 其中一个: 如果存在KTEST:\@echo存在 …还有更多 for /f "tokens=6*" %A in ('dir c:\zzzz ^| Findstr /c:"Volume in drive"') do echo %A 批量使用%%A。请
KTEST(K:)
-driveK
标签为KTEST
。我需要找出标签为KTEST
的驱动器是否存在,无论是a:
还是K:
还是J:
。在我的例子中,它以KTEST(K:)
的形式存在,但是如果它说不存在,我该怎么做呢
抱歉,如果重复,无法真正了解
其中一个:
如果存在KTEST:\@echo存在
…还有更多
for /f "tokens=6*" %A in ('dir c:\zzzz ^| Findstr /c:"Volume in drive"') do echo %A
批量使用
%%A
。请参见以获取/?
,目录/?
,以及查找数据库/?
,您可以使用WMI查询
wmic logicaldisk,其中“VolumeName='KTEST'”获取名称/值
完整示例:
@echo关闭
setlocal
对于/f%%I英寸(
'2^>NUL wmic logicaldisk,其中“VolumeName='KTEST'”获取名称/值^ |查找“=”'
)是否设置“%%I”
如果已定义名称,则回显它存在!
或与:
@echo关闭
setlocal
2> NUL wmic logicaldisk,其中“VolumeName='KTEST'”获取名称/值|查找“=”>NUL&&(
呼应它的存在!
) || (
它不存在。
)
您不需要为/F的使用“令牌=2个delims==”
?@aschipfl nnope。我将解释为什么不作为练习留给读者。:)啊,明白了,非常聪明,+1!根据,最好使用DeviceID
而不是Name
…好主意,但您只是检查C:
的标签,这并没有涵盖整个问题。。。