Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 如何在多个驱动器中查找特定文件?批处理_Batch File_Directory - Fatal编程技术网

Batch file 如何在多个驱动器中查找特定文件?批处理

Batch file 如何在多个驱动器中查找特定文件?批处理,batch-file,directory,Batch File,Directory,因此,我正在制作一个安装程序,它安装在一个特定的文件中,该文件将位于多个驱动器中的一个,并且该文件可以位于任何驱动器中(C:\、E:\、D:\,等等)。例如:我想在E:\KNX\44C中安装ZK47,但我希望系统能够自动查找文件KNX,而无需转到E:\并且无需用户输入。如果文件夹存在,请查看所有硬盘(Mediatype=12): for /f "tokens=2 delims==:" %%i in ('wmic logicaldisk where mediatype^=12 get captio

因此,我正在制作一个安装程序,它安装在一个特定的文件中,该文件将位于多个驱动器中的一个,并且该文件可以位于任何驱动器中(C:\、E:\、D:\,等等)。例如:我想在E:\KNX\44C中安装ZK47,但我希望系统能够自动查找文件KNX,而无需转到E:\并且无需用户输入。

如果文件夹存在,请查看所有硬盘(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
列出所有现有驱动器号

其中mediatype=12
告诉它只列出硬盘(在
结构中,您必须用插入符号
转义
=

/value
定义输出格式


“通常”您将使用
“tokens=2 delims==”
获取
=
之后的字符串(
C:
)。通过使用
作为额外的分隔符,我避免了处理wmic难看的行尾。

您可以编辑您的帖子并添加您尝试的代码,因为它适用于meis
E:
硬盘吗?闪存驱动器将具有另一种媒体类型。您可以使用wmic logicaldisk get caption、mediatype检查。。。它是否与wmic logicaldisk get标题、mediatype一起列出?因此它应该可以工作。这对我和Hackoo都有效。你能把你的确切密码寄出去吗?