什麼是最快速的方式來檢查文件夾大小是否超過特定的大小,比如說10 MB,1 Gb,10 GB等等,而沒有真正計算文件夾的大小。像配額一樣。 Pythonic解決方案將非常棒,但標準UNIX實用程序也歡迎檢查文件夾大小是否大於特定大小的最快方法是什麼?
2
A
回答
1
文件夾大小仍然是文件夾內容的總大小。
您可以嘗試調用du -s foldername
從蟒蛇
2
我不得不說這是不可能的。我不相信任何文件系統緩存文件夾的大小。無論你做什麼,都必須以某種方式或另一種方式走樹。使用du
可能是最快的方法,因爲它將全部在C中發生。
如果您知道預期或支持的最大文件大小,您可以通過計算每個文件夾中的內容而不是大小和短期內優化,在沒有足夠文件達到限制的情況下切割。
+0
並儘快超出限制救助... – EJP
2
可以使用du -sb
,哪還有計算文件夾大小.eg
threshold=1024000 #bytes
path="/your/path"
s=$(du -sb "$path")
set -- $s
size=$1
if [ "$size" -gt $threshold ];then
echo "size of $path greater than $threshold"
fi
4
import os
from os.path import join, getsize
def getsize_limited(directory, limit):
total_size = 0
for root, dirs, files in os.walk(directory, topdown=False):
for name in files:
total_size += getsize(join(root, name))
if total_size > limit:
return limit, False
return total_size, True
例子:
size, within_limit = getsize_limited(os.getcwd(), limit=10**6)
相關問題
- 1. C - 獲取文件大小的最快方法是什麼?
- 2. 如何檢查文件大小是否超過最大文件大小批量
- 3. 表是否大於文件系統的最大文件大小?
- 4. Java檢查文件大小是否大於0
- 5. 檢查文件大小是否大於post_max_size
- 6. 如何檢查文件大小是否大於開始?
- 7. 檢查日期是否大於/小於
- 8. 什麼是最大的SQL表大小
- 9. 什麼是Web上SWF文件的最大文件大小?
- 10. 最大陣列大小是否等於RAM大小?
- 11. 如何檢查文件大小是否大於確定的數字?
- 12. 如何檢查字符串大小是否大於其容器的大小?
- 13. 什麼是大查詢最大行大小?
- 14. 檢查文件的大小總是
- 15. 是.htacess大小減少網站的性能?什麼是.htacess的最大大小?
- 16. 是否有.csv文件的最大文件大小硬限制?
- 17. 是否有最大的android.os.Message.obj大小?
- 18. VCard規範是否規定了最大文件大小?
- 19. 檢查Scala集中所有'Seq'元素的大小是否爲1的最快方法是什麼?
- 20. 基於GLSL中矢量特定分量做最小最大值的最快方法是什麼?
- 21. 文件夾大小如何大於磁盤上的大小?
- 22. 什麼是檢查文件是否改變的最快方法?
- 23. 什麼是Resourcestring最大大小和最大數量限制?
- 24. 什麼是mysql的最大查詢大小?
- 25. 是否有MongoDB最大bson大小?
- 26. 爲什麼Java堆的最大大小是固定的?
- 27. 什麼是ASP.NET Temporary Files,文件夾的典型文件大小?
- 28. 如何判斷隊列大小是否大於最大整數?
- 29. 是否有最大的JavaScript文件大小,瀏覽器可以處理什麼?
- 30. 在Delphi中讀取大文件的最快方法是什麼?
可能重複http://stackoverflow.com/questions/1392413/計算一個目錄大小使用python –