Как мне интерпретировать "всего 18" в выводе команды "ls -l" в Solaris10?
auyantepui# ls -l
total 18
drwxr-xr-x 2 root sys 512 May 23 13:11 READMEs/
drwxr-xr-x 2 root sys 1024 May 23 13:11 bin/
drwxr-xr-x 2 root sys 512 May 23 13:09 docs/
drwxr-xr-x 2 root sys 512 May 23 13:09 examples/
drwxr-xr-x 3 root sys 512 Mar 31 2004 inventory/
drwxr-xr-x 4 root sys 1536 May 23 13:11 lib/
drwxr-xr-x 11 root sys 512 May 23 13:11 man/
drwxr-xr-x 6 root sys 512 May 23 13:11 prod/
В этой команде, что означает "всего 18"? Пожалуйста, объясните подробно.
2 ответа
Это общее выделение диска для содержимого этого каталога:
‘-l’
‘--format=long’
‘--format=verbose’
Помимо имени каждого файла выведите тип файла, разрешения, количество жестких ссылок, имя владельца, имя группы, размер и метку времени (см. Раздел 10.1.6 Форматирование меток времени файла), обычно время модификации.
Обычно размер печатается в виде количества байтов без знаков препинания, но это может быть изменено (см. Раздел 2.2 Размер блока). Например,
‘-h’
печатает сокращенное, читаемое человеком число и‘--block-size="'1"’
печатает счетчик байтов с разделителем тысяч текущей локали.Для каждого каталога, указанного в списке, предварите файлы строкой
‘total blocks’
где блоки - это общее место на диске для всех файлов в этом каталоге. Размер блока в настоящее время по умолчанию составляет 1024 байта, но это может быть переопределено (см. Раздел 2.2 Размер блока). Вычисленные блоки подсчитывают каждую жесткую ссылку отдельно; это возможно недостаток....
Изменить: варианты вышеуказанного текста можно найти в Интернете. Этот конкретный отрывок скопирован с ftp://ftp.gnu.org/old-gnu/Manuals/coreutils/html_node/coreutils_54.html и связан с ним.
Реальный ответ на этот вопрос загадочным образом скрыт в последнем абзаце другого ответа: "блоки - это общее распределение диска для всех файлов в этом каталоге [где] размер блока по умолчанию в настоящее время равен 1024 байтам…". Каталоги считаются файлами в данном контексте. Посмотрите на размеры подкаталогов (512, 1024, 512, …). Округлите их все до кратного 1024; вы получите 1024, 1024, 1024, 1024, 1024, 2048, 1024 и 1024. Теперь разделите их все на 512 (стандартное число байтов в секторе диска), и вы получите 2, 2, 2, 2, 2, 4, 2 и 2. Добавьте их и предварительно: 2+2+2+2+2+4+2+2=18.