所以我制作了一个安装程序,它安装在一个特定的文件中,该文件位于多个驱动器之一中,并且该文件可以位于任何驱动器中(C:\,E:\,D:\,等等) )。例如:我想在E:\ KNX \ 44C中安装ZK47,但我希望系统能够自动查找文件KNX而无需进入E:\且无需用户输入。
答案 0 :(得分:2)
如果文件夹存在,请查看所有硬盘(Mediatype = 12):
for /f "tokens=2 delims==:" %%i in ('wmic logicaldisk where mediatype^=12 get caption /value') do if exist %%i:\KNX\44C echo found on drive: %%i:
for /f %%i in ('command') do ...
是处理命令输出的常用方法。
wmic logicaldisk get caption
列出所有现有的驱动器号。
where mediatype=12
告诉它只列出硬盘(在for
构造内,您必须使用插入符号=
来转义^
。
/value
定义输出格式。
“通常”您会使用"tokens=2 delims=="
来获取=
(C:
)之后的字符串。通过使用:
作为附加分隔符,我避免处理wmic的丑陋行结尾。