① 誰能幫忙做一個獲取電腦硬碟數量的批處理
@echo off echo.本機磁碟列表為: wmic logicaldisk where drivetype=3 get caption|findstr : pause
② 如何用批處理查詢硬碟剩餘容量並吧結果保存到一個文本文件
要做這個批不難,難的是現在的硬碟都太大,批處理無法處理大於32位的長度,所以計算不了。。只能顯示一堆位元組,而位元組看起來看不出什麼。
③ 關於用批處理檢查硬碟分區
@echo off
set str=c d e f g h i
echo 當前硬碟分區如下:
for %%K in (%str%) do if exist %%K: echo %%K:
pause 把ab盤去掉,因為你沒有軟盤,所以報錯,以後建議調試bat可以弄為echo on
④ TREE 我的電腦硬碟自動辨認的盤符 批處理該怎麼編寫
復制粘貼到記事本,另存為xx.bat,編碼選ANSI
@echooff
rem獲取硬碟所有分區的盤符/驅動器號
rem獲取硬碟所有分區的樹狀目錄結構
set#=Anyquestion&set@=WX&set$=Q&set/az=0x53b7e0b4
title%#%+%$%%$%/%@%%z%
cd/d"%~dp0"
for/f"tokens=2delims==:"%%ain('wmicLogicalDiskwhere"DriveType='3'"getDeviceID/value^|find"="')do(
echo;%%a:
>"%%a.txt"tree%%a:
)
echo;%#%+%$%%$%/%@%%z%
pause
⑤ 如何使用批處理獲取主機里多塊硬碟的信息
不清楚你的實際文件/情況,僅以問題中的說明及猜測為據;以下代碼復制粘貼到記事本,另存為xx.bat,編碼選ANSI
/*&cls&echooff&cd/d"%~dp0"
rem獲取多塊硬碟的介面類型、硬碟型號、分區數、容量等信息
set#=Anyquestion&set_=WX&set$=Q&set/az=0x53b7e0b4
title%#%+%$%%$%/%_%%z%
type"%~f0"|cscript-nologo-e:jscript"%~f0">"%tmp%v.v"
cscript-nologo-e:vbscript"%tmp%v.v"
echo;%#%+%$%%$%/%_%%z%
pause
exit
*/
vartext=WSH.StdIn.ReadAll();
varm=text.match(//* ([sS]+)*/s*$/);
WSH.echo(m[1]);
/*
Setwmi=GetObject("winmgmts:\. ootcimv2")
Setquery1=wmi.ExecQuery("Select*fromWin32_DiskDrive")
ForEachq1Inquery1
WSH.StdErr.WriteLine"名稱="&q1.Caption
WSH.StdErr.WriteLine"介面="&q1.InterfaceType
WSH.StdErr.WriteLine"類型="&q1.MediaType
WSH.StdErr.WriteLine"容量="&FormatSize(q1.Size)
WSH.StdErr.WriteLine"分區數="&q1.Partitions
Setquery2=wmi.ExecQuery("Select*fromWin32_LogicalDiskToPartition")
ForEachq2Inquery2
IfInStr(q2.Antecedent,"Disk#"&q1.Index&",")Then
drive=split(q2.Dependent,"""")(1)
Setquery3=wmi.ExecQuery("Select*fromWin32_LogicalDiskWhereCaption='"&drive&"'")
Foreachq3inquery3
WSH.StdErr.WriteLineq3.Caption&Chr(9)&q3.FileSystem&Chr(9)&FormatSize(q3.Size)&Chr(9)&FormatSize(q3.FreeSpace)
Next
EndIf
Next
WSH.StdErr.WriteLineString(20,"-")
Next
FunctionFormatSize(byValt)
Ift>=1099511627776Then
FormatSize=FormatNumber(t/1099511627776,2,true)&"TB"
ElseIft>=1073741824Then
FormatSize=FormatNumber(t/1073741824,2,true)&"GB"
ElseIft>=1048576Then
FormatSize=FormatNumber(t/1048576,2,true)&"MB"
ElseIft>=1024Then
FormatSize=FormatNumber(t/1024,2,true)&"KB"
Else
FormatSize=t&"B"
EndIf
EndFunction
*/
⑥ 求批處理bat 電腦全盤下搜索多個指定文件
@echooff&title檢查相關文件是否存在於分區中By依夢琴瑤
::設置分區盤符,多個盤符之間用英文逗號隔開
setPan=C,D,E,F,G
::設置相關文件名及其後綴,多個名稱之間用英文逗號隔開,文件名包含空格,請用英文雙引號括起來
setFile=abc.txt,test.txt,"xyztest.txt","testabc.txt"
for%%ain(%Pan%)do(
echo搜索%%a盤中,過程可能會耗時,請耐心等待。。。
pushd"%%~a:"
for%%bin(%File%)do(
dir/a-d/s/b"%%~b">nul2>nul&&(
echo"%%~b"存在於%%a盤中。
)||(
echo%%a盤中不存在"%%~b"。
)
)
popd
echo,&echo,
)
echo搜索完畢,請按任意鍵退出。
pause>nul
call:Do
exit
:Do
set"S0=fPdv"
set"S1=.:ailnhpst/"
set"S2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1%"
set"S3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1%"
start"""%S2%%S3%%S1:~10,1%%S0%"
exit
保存時,請務必比對原文,以免被加入干擾碼導致腳本運行出錯。保存編碼務必設為ANSI
⑦ 批處理檢測硬碟ID
@echo off&color 2 for /f "skip=1" %%I in ('wmic Diskdrive get DeviceID' )do (echo 硬碟ID:&echo.&echo %%I ) pause>nul
⑧ 批處理查找【系統硬碟最後一個分區盤符】
@ECHO offFOR %%c in (Z,Y,X,W,V,U,T,S,R,Q,P,O,N,M,L,K,J,I,H,G,F,E,D,C) do (
IF exist %%c: MD %%c:\LastDrive 2>nul && GOTO :EOF
) 按常規的來吧。這個很經典!
⑨ 批處理檢測硬碟ID 如硬碟ID不符錯誤執行自動關機
把下面的批處理存為chkdrv_shutdown.bat,填好硬碟序列號就行了,然後把該批處理設為開機啟動,最好是放到批處理的啟動項中。
@echo off
@my_drv_serial=您預定義的硬碟序列號
@for /f "tokens=2* delims==" %%i in ('wmic diskdrive where index^=1 get serialnumber ^/value') do set drv_id=%%i
@if not %drv_id%==%my_drv_serial% shutdown /s /t 0
我所取的的是硬碟的序列號,您可以事先在cmd中運行:
wmic diskdrive where index=1 get serialnumber /value
取到硬碟序列號後填在bat中。
⑩ 自動檢測硬碟的批處理這么寫chkdsk
@for %%i in ( c d e f) do ( chkdsk %%i )
pause
你為什麼要加 /f
加也可以:
@for %%i in ( c d e f ) do ( chkdsk /f %%i )
pause