麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > BAT > 正文

批處理統計文件夾內的所有文件的數量和總大小的bat

2020-07-26 20:11:20
字體:
來源:轉載
供稿:網友

我最近電腦不知道為什么磁盤空間會慢慢的變小,而且過一段時間之后,又會有兩三GB的空間被釋放出來,使用我想監控下,看看是那個文件夾下產生的文件來占用我的存儲空間,我想按層監視,最終找出原因。

從網上找個命令行顯示指定文件夾目錄的大小的批處理程序,但是發現并不太盡人意,總感覺不是很適合我的使用;

第一個程序,可以顯示某個文件夾下的文件大小,但是我想按層顯示,卻不能滿足我的要求,程序如下:

@echo offecho.set /p dirPath=please input folder path:set /a s=1024*1024*1024for /f "tokens=3 delims= " %%i in ('dir /s /a /-c "%dirPath%" ^|findstr 個文件') do (set z=%%i)echo.echo 文件夾:%dirPath%set d=bitif %z% gtr 1024 set /a "z>>=10"&set d=KBif %z% gtr 1024 set /a "z>>=10"&set d=MBif %z% gtr 1024 set /a "z>>=10"&set d=GBecho 的總大小是:%z% %d%&echo.if %z% LSS %s% echo 該文件夾內容小于1Gpause>nul

第二個程序的,可以顯示當前文件夾下的層級目錄,但沒有循環每一次下文件夾的大小,程序如下:

@echo offsetlocal enabledelayedexpansion(for /d %%a in (C:/KuGou/*) do (  set/a n=z=0  pushd "%%a"  for %%b in (*.*.) do (    set/a n+=1,z+=%%~zb  )  set/a "z>>=20"  popd  echo;%%a [!n!個!z!M]))>統計結果.txtpause

通過上面的兩個程序,我整合了一下,打算合成一個程序,應該就和我需要的程序差不多了,說干就干,下面看看我的程序:

@echo offsetlocal enabledelayedexpansionecho.set /p dirPath=please input folder path:echo %dirPath%echo.for /d %%a in (%dirPath%/*) do (  set/a zz=0  for /f "tokens=3 delims= " %%t in ('dir /s /a /-c "%%a" ^|findstr 個文件') do (  set zz=%%t  )  set d=bitif !zz! GEQ 1024 set /a "z1=!zz!>>10"&set d=KBif !z1! GEQ 1024 set /a "z2=!z1!>>10"&set d=KBif !z2! GEQ 1024 set /a "z3=!z2!>>10"&set d=KBecho 文件夾:%%a ,大小是:!z3!GB = !z2!MB = !z1!!d!)for /f "tokens=1-4 delims= " %%i in ('dir /a /-c %dirPath% ^|findstr 個文件') do (  set/a ss=%%k  set/a ss>>=10,d=bit    if !ss! GEQ 1024 set /a "s1=!ss!>>10"&set d=KB  if !s1! GEQ 1024 set /a "s2=!s1!>>10"&set d=KB  if !s2! GEQ 1024 set /a "s3=!s2!>>10"&set d=KB  echo 在"%dirPath%"根目錄下有 %%i %%j ,總共大小為:!s3!GB = !s2!MB = !s1!!d!  )pause

代碼四:實現執行后統計文件夾內包含所有文件及所有子文件夾下的文件,以及子文件夾下的子文件夾下的文件,以及子文件夾下的子文件夾下的子文件夾下的文件

@echo offsetlocal enabledelayedexpansion(for /f “delims=” %%i in ('dir /s/b/l/ad') do (cd "%%~fsi"set/a a=0,n=0for /f "delims=" %%a in ('dir /b/l/aa') do (set/a a+=1,n+=%%~za 2>nul)set/a n/=1048576echo.%%~fi : !a! : !n!MB)) >統計結果.txtpause

MB不支持小數位,文件過小會顯示為零,可以刪除

set/a n/=1048576

并刪除MB改為字節。

或者使用KB,修改為

set/a n/=1024echo.%%~fi : !a! : !n!KB

代碼5:用純批處理在數字計算上受限制,這個問題用批處理結合awk倒是簡單:
需拖拽執行

# & cls & (for /f "delims=" %%a in ('dir/a-d/b/s %1') do @echo %%~za) | gawk -v path=%~n1 -f %0 >con & pause & exit{sum+=$0}END{	printf "%s文件夾總大小為: /n%.2f byte/n%.2f MB/n%.2f GB/n",path,sum,sum/1024/1024,sum/1024/1024/1024}

gawk 4.1.0 下載地址:http://www.companysz.com/softs/515570.html

程序也不多解釋,大家一看就明白,只是把別人的東西組合在一起,調用方法:

一:雙擊執行,根據提示輸入您需要建設的文件夾路徑。

二:開始--運行--cmd,然后找到存放bat文件的地方,直接輸入bat文件名就可以執行。

三:也可以直接輸出到文件,例如:C:/>f3.bat>111.txt回車之后就只能看到光標一閃一閃的,這時你直接輸入文件夾路徑就可以了。

  說明:如果采用輸出到文件的形式,最后把代碼最后的pause行(暫停代碼)刪除,這樣當程序執行完后會自動退出,不會一直停留在程序里。

以上兩個程序的出自于“批處理之家”,地址在下面方便以后追蹤以及查閱

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 日韩欧美高清片 | qyl在线视频精品免费观看 | 国产青草视频在线观看 | 成人免费看视频 | 性欧美xxxx极品摘花 | 一级免费黄色 | 双性帝王调教跪撅打屁股 | 激情视频导航 | 免费国产 | 精品一区在线视频 | 日本a∨精品中文字幕在线 狠狠干精品视频 | 看91视频 | 国产88久久久国产精品免费二区 | 激情福利视频 | 精品无吗乱吗av国产爱色 | 热99视频 | 黄色免费在线电影 | 日韩字幕| 免费人成在线播放 | 污版视频在线观看 | 国产黄色毛片 | 久久精品视频国产 | 欧美日韩免费在线观看视频 | 成人性生活视频在线观看 | 亚洲网站一区 | 嗯~啊~用力~高h | 日韩精品hd | a一级黄色大片 | 国产精品一区2区3区 | 久久精品亚洲欧美日韩精品中文字幕 | xnxx 日本免费 | mmmwww| 欧美高清在线精品一区二区不卡 | 欧美日韩亚州综合 | 欧美成年视频 | 黄色网址进入 | 色屁屁xxxxⅹ免费视频 | 精品成人免费一区二区在线播放 | 久久久一区二区三区视频 | 国产精品视频自拍 | 亚洲性视频 |