如何用批处理判断是否有D盘, 并判断D盘是否格式化过

来源:百度知道 编辑:UC知道 时间:2024/06/01 03:11:15
1 用批处理判断是否有D盘,
2 如果没有则跳转到标记 :exit
3 有的话继续下一条命令
4 判断D盘是否格式化过
5 没有格式过跳转到标记 :format
6 格式过了继续
7 :start

请那些转载莫名其妙的东西的人走远点!!本人自己会搜索!
思路:
■■■■■■■■■■■■■■■■■■■■■■■■■■■■

尝试向d盘写入文件,返回值错误判断为未格式化 ,goto :format
(不要求区分CD-ROM)
:format

■■■■■■■■■■■■■■■■■■■■■■■■■■■■
1:请看清楚问题再回答,感激不尽。
2:请那些莫名其妙的回答走开。
3:别的地方转来一大堆内容的走开。严重讨厌这种人,在下自己会用百度搜索。

呵呵~今天给朋友装机,XpSp2下测试过!

@echo off
For /f "delims=驱动器A: " %%a in ('fsutil fsinfo drives^|find /v ""') do if /i "%%a"=="D" goto You
goto exit
:You
For /f "delims=" %%i in ('fsutil file createnew "D:\file.txt" 0^|find /i "此卷不包含可识别的文件系统"') do goto format
del /q /f /a "D:\file.txt"
echo 有D盘,并格式化过&pause>nul
:format
echo 有D盘,但未格式化过&pause>nul
:exit
echo 无D盘&pause>nul
:start

@ECHO OFF
IF NOT EXIST D: GOTO :exit
fsutil fsinfo drivetype D:|FIND /I "CD-ROM">NUL && GOTO :exit
CHKNTFS D:|FIND /I "没问题">NUL && GOTO :start || GOTO :format
:format
:start
:exit

Rem 是否格式化过的判断比较粗糙

if not exist d: goto exit
>nul 2>&1 dir /a /b d:\&&goto start
:format
:start
:exit

好像不好判断
不知道WINDOWS会不会记录某磁盘是否被格式化过

if not exit