Почему Средство поиска и du сообщают о другом размере файла?

Я пишу сценарий geektool 3 для показа размера конкретной виртуальной машины VMware Fusion. Такой .vmwarevm "файл" является действительно упакованным каталогом.

Доберитесь Информация в Средстве поиска говорит, что файл составляет "52,91 ГБ". Я выполняю следующее du команда для получения размера файла:

> du -hs ~/Documents/Virtual\ Machines.localized/MY-PRECIOUS-7.vmwarevm | awk '{print $1}'

Это du -hs управляйте возвращает размер файла как "49G". Что составляет различие от того, о чем сообщает Средство поиска?

С другой стороны, я попытался заменить -s опция с -d опция как так:

du -hd ~/Documents/Virtual\ Machines.localized/MY-PRECIOUS-7.vmwarevm | awk '{print $1}'

Это du -hd управляйте возвращает размер файла как "59G". Что составляет различие между Средством поиска, du -hd, и du -hs?

Кроме того, это du -hd команда не производит вывода в geektool 3. Что дает?

3
задан 28.03.2010, 19:19

3 ответа

Не пользователь Mac OS X, но я читал где-нибудь, что использование Средства поиска базируется 10 в наше время.

Различие могло быть то, что du все еще использует основу 2?

49.0 GiB * (1024^3 bytes / GB) = 52,613,349,376 bytes = 52.6 GB

(небольшая разница то, потому что du округляется к ближайшему ГБ),

6
ответ дан 07.12.2019, 22:55

Также обратите внимание, что "du" возвращает использованное пространство фактической дисковой емкости, тогда как другие инструменты возвратят выделенное место. Где у Вас есть редкие файлы, эти 2 значения могут очень отличаться - у меня есть файл, которому выделили 2 ТБ ему, но это только занимает приблизительно 200 МБ дискового пространства.

4
ответ дан 07.12.2019, 22:55

Nifle корректен. du возвраты базируются 2, возвраты Средства поиска базируются 10, и 49 ГиБ ≈ 52.91 ГБ

-d аргумент требует, чтобы Вы указали глубину. От экспериментирования сейчас, появляется, даете ли Вы что-то помимо числа для глубины, это ест аргумент, который Вы указали и ведете себя, как будто Вы сделали -d 0. 59G Вы добираетесь, размер текущего каталога, не размер vmwarevm файла.

Вот эксперимент, который я выполнил:

[~]$ ls -d Code
Code/

[~]$ du -h -s Code
8.3M    Code

[~]$ du -h -d 0 Code
8.3M    Code

[~]$ du -h -d Code
 38G    .           <-- this is the size of ~/

[~]$ du -h -d 0
 38G    .

Вы могли бы хотеть прочитать Mac OS X du (1) страница справочника для получения дополнительной информации.

3
ответ дан 07.12.2019, 22:55

Теги

Похожие вопросы