Когда я запускаю команду 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 *
вывода, это примерно на 600 МБ меньше du -hs .
команда. Как мне выяснить, что вызывает 600 МБ? И почему между этими двумя командами такое большое расхождение?
В 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 *
. Он предоставит общую сумму, поэтому вам не придется складывать ее вручную.