高分求助,批处理高手来

来源:百度知道 编辑:UC知道 时间:2024/05/09 18:52:37
我用批处理写了个工具,对U盘拷贝文件(写满磁盘)然后比对文件,验证拷进去的资料是否正确。现在问题是不能自动判断U盘的容量,就不知道要写满U盘的话要拷多大的文件进去,现在只能固定死测试512M的,另外不同电脑插入U盘后显示的盘符也不一样,所以我做了很多个批处理文件,每个对应处理一个盘符。
我现在需要解决上面的问题,就是自动获取当前的移动磁盘盘符和容量,然后赋值给2个变量,再去做相应处理,请高手帮忙

@echo off
setlocal enabledelayedexpansion
for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
set "var=%%i"
set "drive=!var:~-2!"
fsutil fsinfo drivetype !drive!|find "移动">nul &&for /f "tokens=3" %%a in ('dir /-c !drive!') do set /a freesize=%%a/1048576
)
echo U盘为!drive!
echo 剩余空间为!freesize!MB
pause

::适用于XP系统