|  | 
 
| luckboy45 中级用户
 
    
 
 
 积分 487
 发帖 212
 注册 2007-4-1
 状态 离线
 | 
| 『楼 主』:
 如何判断个盘是否为NTFS格式?
 
使用 LLM 解释/回答一下 
 
 
如何判断各盘是否为NTFS格式?如果不是则批量转换为NTFS格式,如何实现批量转换?
 
 我只能写成单个盘转换,能否批量判断所有盘,然后再实现批量转换??
 
 ::将C盘转换成NTFS格式
 convert c:/fs:ntfs
 
 ::判断磁盘格式
 for /f "tokens=1,2" %%i in ('chkntfs c:^|find /i "NTFS" ') do (
 set var=%%j
 goto type
 )
 goto over
 :over
 echo 出错啦!不是NTFS格式耶...马上执行转换....
 pause
 :type
 echo 已经是NTFS格式了,不用转换了!~
 pause
 
 
 
 
 
 |  
                  |  逍遥@浪子@反病毒
 |  | 
|  2008-4-19 18:01 |  | 
|  | 
 
| knoppix7 银牌会员
 
      
 
 
 
 积分 1287
 发帖 634
 注册 2007-5-2
 来自 cmd.exe
 状态 离线
 |  | 
|  2008-4-19 18:19 |  | 
|  | 
 
| luckboy45 中级用户
 
    
 
 
 积分 487
 发帖 212
 注册 2007-4-1
 状态 离线
 | 
| 『第 3 楼』:
 
 
使用 LLM 解释/回答一下 
 
 
楼上兄弟,我这个判断语句也可以实现判断,兄弟貌似误会了,我不是要查驱动器类型,查询卷信息,我是想,如果不是NTFS格式则转换为NTFS格式,只是想批量判断并转换..希望会的兄弟,不吝啬赐教...
 
 
 
 
 
 |  
                  |  逍遥@浪子@反病毒
 |  | 
|  2008-4-19 21:18 |  | 
|  | 
 
| abcd 银牌会员
 
      
 
 
 
 积分 1436
 发帖 739
 注册 2007-10-11
 状态 离线
 |  | 
|  2008-4-19 21:47 |  | 
|  | 
 
| bat-zw 金牌会员
 
       永远的学习者
 
 
 积分 3105
 发帖 1276
 注册 2008-3-8
 状态 离线
 | 
| 『第 5 楼』:
 随便写了段,请自己修改吧:
 
使用 LLM 解释/回答一下 
 
 
@echo off&setlocal enabledelayedexpansioncd\
 for /f "delims=:\" %%i in ('fsutil fsinfo drives ^| find "\"') do (
 for /f "delims=" %%a in ('fsutil fsinfo volumeinfo %%i: ^| findstr "系统
 名"') do call,set str=%%a&if "!str:~8!"=="FAT32" echo %%i盘不是NTFS格式
 )
 pause>nul
 
 Last edited by zw19750516 on 2008-4-19 at 11:14 PM ] 
 
 
 
 
 |  
                  |  批处理之家新域名:www.bathome.net
 |  | 
|  2008-4-19 22:31 |  | 
|  | 
 
| luckboy45 中级用户
 
    
 
 
 积分 487
 发帖 212
 注册 2007-4-1
 状态 离线
 |  | 
|  2008-4-27 14:15 |  | 
|  | 
 
| plp626 银牌会员
 
      钻石会员
 
 
 积分 2278
 发帖 1020
 注册 2007-11-19
 状态 离线
 |  | 
|  2008-4-27 14:20 |  | 
|  | 
 
| luckboy45 中级用户
 
    
 
 
 积分 487
 发帖 212
 注册 2007-4-1
 状态 离线
 | 
| 『第 8 楼』:
 
 
使用 LLM 解释/回答一下 
 
 
很感谢楼上兄弟,你没能明白我的意思,只是帮我精简代码一样...
 
 我的目的是:如何判断各盘是否为NTFS格式?如果不是则批量转换为NTFS格式,如何实现批量转换?
 
 我只能写成单个盘转换,能否批量判断所有盘,然后再实现批量转换??
 
 
 ::判断磁盘格式
 for /f "tokens=1,2" %%i in ('chkntfs c:^|find /i "NTFS" ') do (
 set var=%%j
 goto type
 )
 goto over
 :over
 echo 出错啦!不是NTFS格式耶...马上执行转换....
 ::将C盘转换成NTFS格式
 convert c:/fs:ntfs
 pause
 :type
 echo 已经是NTFS格式了,不用转换了!~
 pause
 
 
 
 
 
 |  
                  |  逍遥@浪子@反病毒
 |  | 
|  2008-4-27 15:42 |  | 
|  | 
 
| metoo 初级用户
 
   
 
 
 
 积分 195
 发帖 93
 注册 2006-10-28
 状态 离线
 | 
| 『第 9 楼』:
 
 
使用 LLM 解释/回答一下 
 
 
以前写的。。用个磁盘探索递归下就能达到效果了 :ntfs@echo off
 title=ntfs转换工具
 set pan=
 set/p pan=请输入要测试的盘符 (不带冒号)
 if not exist %pan%: echo %pan%盘不存在&goto ntfs
 if exist %pan%:\* @for /f "tokens=1,2 delims=。 " %%i in ('chkntfs %pan%:^|@find /v ":"') do (
 echo %pan%的文件系统类型是 %%j
 if /i %%j==ntfs goto ntfs
 if /i %%j==fat* goto ntfs1)
 :ntfs1
 set t=
 set/p t=是否转换为ntfs? Y(是) ,N(否)...
 @echo off
 if /i "%t%"=="n" goto ntfs
 if /i "%t%"=="y" convert %pan%:/fs:ntfs&goto ntfs
 
 
 
 |  | 
|  2008-4-27 16:37 |  | 
|  | 
 
| luckboy45 中级用户
 
    
 
 
 积分 487
 发帖 212
 注册 2007-4-1
 状态 离线
 |  | 
|  2008-4-27 16:41 |  | 
|  | 
 
| zh159 金牌会员
 
       
 
 
 积分 3687
 发帖 1467
 注册 2005-8-8
 状态 离线
 | 
| 『第 11 楼』:
 
 
使用 LLM 解释/回答一下 
 
 
改一下 5 楼的: @echo off&setlocal enabledelayedexpansionfor /f "delims=" %%i in ('fsutil fsinfo drives^|find "\"') do (
 set str=%%i
 call chkntfs %%str:~-3,1%%:|findstr "FAT32">nul&&call echo %%str:~-3,1%%盘不是NTFS格式
 )
 pause
 
 
 
 
 |  
                  |  
  |  | 
|  2008-4-27 17:41 |  |