您好,登錄后才能下訂單哦!
這篇文章主要講解了“怎么用DOS命令判斷磁盤分區是否為NTFS格式”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么用DOS命令判斷磁盤分區是否為NTFS格式”吧!
一同事問起,如何使用命令判斷磁盤是否是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 = &h20
Const wbemFlagForwardOnly = &h30
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格式
感謝各位的閱讀,以上就是“怎么用DOS命令判斷磁盤分區是否為NTFS格式”的內容了,經過本文的學習后,相信大家對怎么用DOS命令判斷磁盤分區是否為NTFS格式這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。