本帖最后由 aloha20200628 于 2024-6-22 11:35 编辑
回复 1# 大地
给一个多对策版本...
一》用 yzxwvuts... 逆序适配第一个空盘符
二》若命令行指定或直接拖入一个挂载文件给本批,则跳转[main]处理完成
三》否则搜索当前目录(包含子目录)中全部*.vhd文件,若发现多个(>1)则须指定其中一个序号确认,若未发现任何挂载文件则直接退出本批
四》如需删除renvol.txt,抹去代码第18行首 REM 关键字即可
- @echo off &setlocal enabledelayedexpansion
- set "d=yzxwvutsrqponmlkjihgfed"
- :[next]
- if exist "!d:~,1!:\" (set "d=!d:~1!" & goto[next])
- set "_d=!d:~,1!"&set/a "n=0,k=1"
- if exist "%~1" (set "_1=%~1" & goto[main])
- for /r %%F in (*.vhd) do (set/a "n+=1"&set "_!n!=%%F")
- if !n! gtr 1 (
- for /L %%k in (1,1,!n!) do echo,%%k: !_%%k!
- set/p "k=用行首序号指定一个挂载文件:"
- ) else if !n! equ 0 (endlocal&exit/b)
- :[main]
- echo,Select vdisk file="!_%k%!">"renvol.txt"
- (for %%s in (
- "attach vdisk", "select partition 1", "assign letter=!_d!", "exit") do (echo,%%~s)
- )>>"renvol.txt"
- diskpart /s "renvol.txt"
- REM del /q "renvol.txt"
- endlocal&pause&exit/b
复制代码
|