作者nashsai (納許賽)
看板Linux
標題[問題] 統計路徑內的檔案大小
時間Wed Jul 27 14:09:03 2016
請問一下
有無效快的方法可以計算路徑內一天內且是特定檔名增加的容量 及平均單檔的容量
小弟目前是用
find /mnt/filesystem/path -iname "*.exr" -o -iname "*.tga" -a -mtime 1 -exec ls
-l {} > day \;
先讓他輸出昨天的日期
然後
cat day | wc -l 算出有幾個檔案
cat dat | awk '{print $5}' | awk '{sum += $1} END {print sum/1024/1024}'
算出檔案大小(MB)
問題是 用find 通常會需要超過一小時 請問有無適合的方法
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.216.91.85
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Linux/M.1469599747.A.FE6.html
1F:→ nashsai: find 指令有誤 只能找到一種類型的檔名 不知哪裡有錯 07/27 14:18
2F:推 kenwufederer: find /path -mtime -1 -name “副檔名” -exec du - 07/27 14:58
3F:→ kenwufederer: h {} \; 07/27 14:58
4F:→ kenwufederer: 用du統計大小 wc計數 然後去加減 07/27 14:59
5F:推 chang0206: 如果沒有子目錄的話 用 ls 比較快.(跟廢話差不多 XD ) 07/27 15:16
6F:推 chang0206: 剛發現可以用 tree 去抓出來 然後再統計 不過要換算 07/27 15:32
7F:→ Hevak: 會超過1小時->可以問一下你的檔案結構多複雜or多麼多檔案嗎 07/27 22:58
8F:→ kenduest: 一個小時,大概幾億個檔案? 07/28 13:03
9F:→ kenduest: 題外話原貼用 -exec ls -l {} 就是一個錯誤方式 07/28 13:03
10F:→ rickieyang: 等於一個檔案 ls 一次... 這... 07/28 18:44
11F:→ kenduest: 改一下 ls -l {}+ 會改善很多,或者用 printf 也好 07/28 21:45
12F:→ nashsai: 感謝大家的回覆 我在研究一下 07/28 22:11
13F:→ nashsai: 檔案量真的挺大的 平日每天大概增加會有三萬筆圖片檔案 07/28 22:12
14F:→ rickieyang: 要跑一個小時檔案數應該不少,ls -l {}+ 不知道吃的下 07/29 10:50
15F:→ rickieyang: 嗎? 07/29 10:50
16F:→ kenduest: 擔心的話建議就 -printf 指定輸出比較 ok 07/29 14:13