Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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
Loops USB驱动器字母查找器_Loops_Batch File - Fatal编程技术网

Loops USB驱动器字母查找器

Loops USB驱动器字母查找器,loops,batch-file,Loops,Batch File,我有一个脚本,它检查某个USB,然后在上面打开一个文件。但是,现在我只需要检查插入的USB驱动器号。然而,我真的不知道如何做到这一点,网上搜索结果对我毫无帮助。 这是我现在的脚本: @echo off :loop if exist D:\ (goto Load) else (goto loop) :Load D: start Loader1.exe goto Finish :Finish exit 以下是如何从任何驱动器获取USB驱动器号: @echo off for /F "useba

我有一个脚本,它检查某个USB,然后在上面打开一个文件。但是,现在我只需要检查插入的USB驱动器号。然而,我真的不知道如何做到这一点,网上搜索结果对我毫无帮助。 这是我现在的脚本:

@echo off
:loop
if exist D:\ (goto Load) else (goto loop)
:Load

D:
start Loader1.exe
goto Finish

:Finish 
exit

以下是如何从任何驱动器获取USB驱动器号:

@echo off
for /F "usebackq tokens=1,2,3,4 " %%i in (`wmic logicaldisk get caption^,description^,drivetype 2^>NUL`) do ( 
  if %%l equ 2 ( echo %%i is a USB drive. ) 
)

答案不是我从@scientist_7中得到的复制品。

你是在看这样的东西吗


这将仅接管可移动磁盘上的任务,并将为每个任务指定相关的逻辑名称,以检查您的文件Loader1.exe是否存在,以便采取下一步操作

  • :
  • WMIC logicaldisk中
    驱动器类型的值含义

    0未知

    1没有根目录

    2可移动磁盘

    3本地磁盘

    4网络驱动器

    5光盘

    6 RAM磁盘


  • wmic logicaldisk获取标题,驱动器类型|查找“2”


此结果是可移动磁盘:
D:2
E:2
F:2
G:2
  • 标题=D:
  • 驱动器类型=可移动磁盘=2

之后,并确保存在
Loader1.exe
文件以启动/运行命令:

驱动程序:\Loader1.exe

最后一部分,执行下一个循环的超时(1分钟):

timeout 60>num&&goto:loop


@echo关闭
:循环
对于(“'wmic logicaldisk get caption,drivetype | find“2”“”)中的/f%%i,如果存在,请执行“%%~i\Loader1.exe”(
cd/d%%~i\&start。\Loader1.exe&&goto:Finish)
超时60>nul和goto:循环)
:完成
  • ::或::

@echo关闭
设置“\u cd=%cd%”和标题nul&goto:循环(&T)

您的代码不检查特定的USB,它只检查分配给
D:
的已安装驱动器。我不确定您是否知道,但出于安全考虑,Microsoft禁用了自动运行可移动磁盘。出于这个原因,我建议您在脚本中构建一些安全性,以便它只在特定设备上运行,而不是在任何设备上运行。本网站的目的是在代码的特定问题上寻求帮助。然而,您的代码并没有出现问题,所以您的请求代码在这里是离题的。请搜索并编写一些代码,以便我们为您提供帮助,谢谢。虽然许多USB存储设备显示为可移动(DriveType 2),但这肯定不可靠。虽然许多USB存储设备显示为可移动(DriveType 2),但这肯定不可靠。当然,但只有一个具有文件Loader1.exe!?嗯,我想我们可以这样假设,但是如果特定的USB存储设备没有将自己标识为可移动驱动器(DriveType 2),并且我们无法控制它,那么它将无法找到要启动的设备。