• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell
您的位置:首页 > 脚本语言 >DOS/BAT > 用DOS命令判断磁盘分区是否为NTFS格式

用DOS命令判断磁盘分区是否为NTFS格式

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了dos ntfs,支持ntfs的dos,ntfs4dos,dos for ntfs,grub4dos ntfs等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
一同事问起,如何使用命令判断磁盘是否是NTFS格式,以便进行进一步执行相关命令操作,如转换磁盘格式或设置文件/文件夹安全权限。 

  第一反应,可以使用diskpart。经尝试,可以如下使用:

echo list volume>t.txt && diskpart /s t.txt | find "C " >result.txt && 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脚本(FileSystem.vbs):

On Error Resume Next

Const wbemFlagReturnImmediately = &h10
Const wbemFlagForwardOnly = &h20

For Each strComputer In arrComputers

   Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")
   Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_LogicalDisk", "WQL", _
                                          wbemFlagReturnImmediately + wbemFlagForwardOnly)

   For Each objItem 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格式

</div>

您可能想查找下面的文章:

  • 用DOS命令判断磁盘分区是否为NTFS格式

相关文章

  • 用批处理实现的创建带日期的文件夹的代码
  • cmd rd命令 删除文件夹
  • DOS命令初学者基础知识学习
  • 不错的批处理脚本实例代码 第二部分
  • 用指定字符串替换指定内容
  • 终极dos批处理for循环命令详解
  • dos 流程跳转 goto
  • dos批量替换当前目录后缀名的实现代码
  • 批处理经典入门教程!(从不懂到高手)第1/5页
  • 批处理实现的结束进程并删除文件的代码

文章分类

  • vbs
  • DOS/BAT
  • hta/htc
  • python
  • perl
  • VBA
  • ColdFusion
  • ruby
  • PowerShell
  • Lua
  • Golang
  • linux shell

最近更新的内容

    • dos命令行不能输入中文怎么办该如何解决
    • 根据输入的文字实现输出倒文的批处理
    • 使用bat批处理来安装和卸载ASP组件
    • bat下变量截取实例
    • CMDOW 一个CMD命令行下 隐藏、禁用窗口控制程序
    • bat运行时不弹出那个黑框框的完美解决方案
    • cygwin 在windows下使用linux命令的方法
    • 可疑文件的批处理最好能用循环来写主体部分
    • Windows下使用命令实现文件换行符替换
    • secedit.exe本地安全策略命令使用方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有