批处理获取U盘 可移动硬盘的盘符

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

作者:朱金灿

来源:http://blog.csdn.net/clever101

 

关于批处理获取U盘、可移动硬盘的盘符,网上有三种做法:

【方案一】fsutil


    

 @echo off    for %%a in (c d e f g h i j k l m n o p q r s t u v w x y z) do (      for /f %%h in ('fsutil fsinfo drivetype %%a:^|findstr "Removable.* 可移动"') do (        set DriveU=%%h      )    )    echo.%DriveU%pause

这种方法明显不靠谱,因为u盘很可能被改名,名字并不一定带有“可移动”或“Removable”。


【方案二】WMIC

    @echo off    for /f "tokens=2 delims==" %%a in ('wmic LogicalDisk where "DriveType='2'" get DeviceID /value') do (      set DriveU=%%a    )    echo.%DriveU%pause

  

 这种方法经测试后可行。

【方案三】BAT + VBS (优点是可以兼容Win2000系统)

 @echo off    <%~fs0 more +10>%temp%\GetU.vbs    for /f %%a in ('cscript /nologo "%temp%\GetU.vbs"') do (      set "DriveU=%%a"    )    echo.%DriveU%    pause    goto :eof    ''''''''''''''''''''''''''''''''''''''''''''''''''''    Set Fso = CreateObject("Scripting.FileSystemObject")    Set B = Fso.Drives    For Each A in B        If A.DriveType = 1 Then           aDisk = aDisk & A.DriveLetter & ": "        End If    Next    aDisk = Replace(aDisk, "A: ","")WScript.Echo aDisk

          这种方法有一点效果,但有时会把Combo Socket(读卡器驱动)当作是U盘。

 

          所以综合来说,第二种方法最好。


参考文献:

1. 批处理获取U盘、可移动硬盘的盘符

 









           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

这里写图片描述

猜你喜欢

转载自blog.csdn.net/gdruhv/article/details/84195695