无忧启动论坛
标题:
求一个获取 移动盘符的批处理
[打印本页]
作者:
1198398
时间:
2019-9-19 19:57
标题:
求一个获取 移动盘符的批处理
for /f "tokens=2 delims==" %%a in ('wmic LogicalDisk where "DriveType='2'" get DeviceID /value') do (
set DriveU=%%a\USB_DISK\
)
echo. 移动磁盘 %DriveU%
上面这个可以获取U盘盘符!但现在的固态u盘,硬盘盒子,都无效。
如果bat不能实现,用搜索所有盘根目录下USB_DISK,不要全盘搜索,太慢!最好能叠加上面的脚本!
谢谢大老了,我是菜鸟。
作者:
窄口牛
时间:
2019-9-19 21:13
@echo off
for /f "tokens=2 delims==" %%i in ('"wmic LogicalDisk where DriveType=2 get DeviceID /value 2>nul"') do echo U盘盘符 %%i
for /f "tokens=2 delims==" %%a in ('"wmic DiskDrive where MediaType="External hard disk media" get Index /value 2>nul"') do (
for /f "tokens=7 delims== " %%i in ('wmic path Win32_LogicalDiskToPartition^|findstr /c:"Disk #%%a"') do (
echo 移动硬盘盘符 %%~i
)
)
pause>nul
复制代码
作者:
1198398
时间:
2019-9-19 21:25
多谢牛帅!!!!!!
作者:
nttwqz
时间:
2019-9-19 21:35
建议楼主说明获取移动储存设备盘符的目的,是不是有更加简单的逻辑来实现,是否真的必需获取硬盘硬盘的盘符才能达到最终目的?这样大家也能更好的帮你解决问题。
移动磁盘不比U盘,连fsutil也无能为力,虽然wmic partition能识别,但是不能显示盘符,设备名称倒是可以显示,还要借助diskpart才能确认盘符。
虽然,我也写了个查到活动及ESP分区,利用脚本现成的变量修改一下的确能做到楼主说的,但是毕竟初始化较慢,如果在遇上移动硬盘休眠启动时间,可能5秒以上才能显示结果,即使快了至少也得2~3秒,效率实在太低。关键是,近期我也没精力和心情给你修改。
最后,希望楼主能自己捕鱼,而不是让大家直接送给你一条现成的鱼,就像bathome一样。
作者:
1198398
时间:
2019-9-19 23:38
本帖最后由 1198398 于 2019-9-20 08:11 编辑
已解决!!!谢谢大佬的帮助
作者:
zhoubin
时间:
2019-9-20 08:48
1198398 发表于 2019-9-19 23:38
已解决!!!谢谢大佬的帮助
怎么解决的,这个批处理,pe下能用吗,谢谢您!!
欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/)
Powered by Discuz! X3.3