du -hs * 的檔案和目錄大小與 du -hs 不一致

du -hs * 的檔案和目錄大小與 du -hs 不一致

當我運行 bash 命令時du -hs .,輸出是

1.2G .

當我運行 bash 命令時du -hs *,輸出是

108K    action
4.0K    activate.php
8.0K    browse.php
584K    captcha
164K    class
4.0K    clearcache
388K    cms
4.0K    comment.complete.php
4.0K    contact.php
530M    docs
116K    documentation
24K     DONE.txt
21M     em
4.0K    footer.php
4.0K    forgot.php
4.0K    header.php
196K    images
264K    includes
8.0K    index.php
168K    js
4.0K    login.php
4.0K    logout.php
4.0K    mail.confirmation.php
4.0K    mail.php
4.0K    news.item.php
4.0K    news.php
4.0K    profile.edit.php
4.0K    profile.php
4.0K    reset.confirmation.php
4.0K    robots.txt
4.0K    signup.confirmation.php
4.0K    signup.php
4.0K    svnstatus
4.0K    svnunknown
4.0K    TODO.txt
16M     tpl

如果將輸出的所有檔案和目錄大小加起來du -hs *,則比du -hs .命令少約 600MB。我該如何找出導致 600MB 的原因?為什麼這兩個命令之間會有如此大的差異?

答案1

du -hs *命令將僅報告與該通配符相符的檔案。該通配符不會包含任何以句點開頭的檔案或目錄。

dh -sh命令將檢查.(當前目錄),因此它將檢查該目錄下的所有內容,包括以句點開頭的任何檔案。

例如:

$ du -shc *
2.0M    file.1
4.0M    file.2
5.9M    file.3
 12M    total

$ du -shc
 24M    .
 24M    total

$ ls -la 
total 48576
drwxr-xr-x    8 John  Bovi      272 Aug 20 14:26 .
drwxr-xr-x  243 John  Bovi     8262 Aug 20 14:25 ..
-rw-r--r--    1 John  Bovi  2097152 Aug 20 14:26 .file.1
-rw-r--r--    1 John  Bovi  4145152 Aug 20 14:26 .file.2
-rw-r--r--    1 John  Bovi  6193152 Aug 20 14:26 .file.3
-rw-r--r--    1 John  Bovi  2097152 Aug 20 14:26 file.1
-rw-r--r--    1 John  Bovi  4145152 Aug 20 14:26 file.2
-rw-r--r--    1 John  Bovi  6193152 Aug 20 14:26 file.3

旁白:

為了讓事情變得更容易,而不是du -hs *使用du -hsc *.它將提供總計,因此您無需手動新增。

相關內容