我正在尝试制作一个简单的批处理脚本来擦除/归零闪存驱动器并重新格式化它。它是为其他人准备的,所以我试图通过阻止格式化为 C:、D: 等来使其相对安全。
我正在寻找一个我可以使用的 IF ELSE 类型命令,作为一个错误包罗万象。
这是我的 ATM 的(主要部分)
:again
echo.
cls
echo.
echo Please select the drive letter for the flash
echo drive you wish to erase
echo.
echo **** DO NOT SELECT C: OR D: ****
echo.
echo.
echo *** Enter letter (no colon) ONLY e.g. "E" ***
echo.
set /p answer=
cls
echo.
echo.
echo.
if /i "%answer:~,1%" EQU "e" format E: /x /fs:FAT32 /v:FORENSICS /p:2
if /i "%answer:~,1%" EQU "f" format F: /x /fs:FAT32 /v:FORENSICS /p:2
if /i "%answer:~,1%" EQU "g" format G: /x /fs:FAT32 /v:FORENSICS /p:2
if /i "%answer:~,1%" EQU "h" format H: /x /fs:FAT32 /v:FORENSICS /p:2
if /i "%answer:~,1%" NOT exist goto again && echo Please provide a valid drive letter for flash drive
echo.
现在我知道了
if /i "%answer:~,1%" NOT exist goto again && echo Please provide a valid drive letter for flash drive
不是有效的语法,但我可以使用什么来实现相同的目标?我知道有一种更有效的方法可以做到这一点(例如,不要为可能的驱动器号定义 4 个变量,而是放置一个变量来监听用户输入并在存在时接受它。)
这是我第一次涉足批处理脚本(和一般的脚本),我正在学习动态,所以你可以做的“笨蛋”更好。
提前致谢。