可能重複:
When running ls -l, why does the filesize on a directory not match the output of du?什麼文件夾的大小表明LS -la
嗨。 我很有趣的信息是什麼顯示我在Linux輸出ls -la。所以,默認大小是4K。但是,如果有很多文件,可能是零大小,如PHP會話=),則大小爲!= 4K。 什麼讓我看到ls -la? 而之後,當我清理這個文件夾,我看到最後的最大大小。
可能重複:
When running ls -l, why does the filesize on a directory not match the output of du?什麼文件夾的大小表明LS -la
嗨。 我很有趣的信息是什麼顯示我在Linux輸出ls -la。所以,默認大小是4K。但是,如果有很多文件,可能是零大小,如PHP會話=),則大小爲!= 4K。 什麼讓我看到ls -la? 而之後,當我清理這個文件夾,我看到最後的最大大小。
ls -al
會給你目錄本身佔用的空間,而不是其中的文件。
因此,它具有最小尺寸。當一個目錄被創建時,它被賦予了這麼多空間來存儲文件信息,這是每個文件一定數量的字節數(假設64個字節認爲該數字可能不同)。
如果初始大小是4K,那最多可以允許64個文件。一旦你把超過64個文件放到目錄中,它將不得不被擴展。
至於您的評論:
之所以說它可能無法獲得,當你刪除所有文件中這是因爲通常有沒有真正的優勢更小。它只剩下相同的大小,以便在下次放入大量文件時它不必再次展開(它傾向於假定過去的行爲是未來行爲的指示)。
如果你想減少佔用的空間,這是一個古老的技巧。若要縮小/tmp/qq
的大小,請創建一個全新的/tmp/qq2
,將所有文件複製(在刪除不需要的文件後),然後將/tmp/qq
重命名爲/tmp/qq3
和/tmp/qq2
至/tmp/qq
。瞧!噢,最終刪除/tmp/qq2
。
查看http://stackoverflow.com/questions/1012488/when-running-ls-l-why-does-the-filesize-on-a-directory-not-match-the-output-of – kennytm 2010-06-05 11:14:27
你可能會想在這裏問這個問題: http://superuser.com/ Cheers =) – Andree 2010-06-05 11:14:29