脚本宝典收集整理的这篇文章主要介绍了用DOS命令判断磁盘分区是否为NTFS格式,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
一同事问起,如何使用命令判断磁盘
是否是NTFS格式,以便进行进一步执行
相关命令操作,如转换磁盘格式或设置文件/文件夹安全权限。&nbs
p; 第一反应,可以使用
diskpart。经尝试,可以如下使用:
echo list volume>t.txt
&& diskpart /s t.txt | find "C " >result.txt &
amp;& del t.txt
然后使用
for语句对输出结果result.txt进行分段判断,但这样的代码看起来过于复杂,而且diskpart只能运行在管理员模式下。
所以使用diskpart命令不太现实。使用cacls进行文件权限设置的时候发现,在运行在非NTFS格式的磁盘上运行会返回1,所以可以如下判断某一磁盘是否为:
cacls c:\ >nul
if %errorlevel%
==1 echo
c盘不是NTFS格式
但如上方法只适用与
xp/2003,WIN2000无DISKPART命令,且在非NTFS上运行CACLS返回0,虽然可以使用ver命令输出来判断系统是否为XP/2003,但在WIN2000下使用cacls命令难以判断是否为NTFS格式。也许会说按cacls命令输出为空来判断,那如果那个盘刚好是NTFS格式,但无任何安全权限,那就不好说了。
编写了一WMI脚本(File
System.
vbs):
On Error Resume Next
Const wbemFlagReturnImmediately = &
h10
Const wbemFlagForwardOnly = &h20
For
each strComputer In arrComputers
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
Set col
ITems = objWMIService.ExecQuery("SELECT *
From Win32_
LOGicalDisk", "WQL", _
wbemFlagReturnImmediately + wbemFlagForwardOnly)
For Each ob
JITem In colItems
WScript.Echo objItem.Caption & " " & objItem.FileSystem
Next
Next
cscript //nologon filesystem.vbs 可以列出所有盘符的文件系统格式,除了不可用的(如未放
光盘的
光驱),固可修改批处理如下:
cscript //nologo filesystem.vbs | find "C: NTFS"
if %errorlevel%=1echo C盘不是NTFS格式
脚本宝典总结
以上是脚本宝典为你收集整理的用DOS命令判断磁盘分区是否为NTFS格式全部内容,希望文章能够帮你解决用DOS命令判断磁盘分区是否为NTFS格式所遇到的问题。
如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。