Я работаю в операционной системе OS X и не понимаю, что должно означать второе поле в команде ls -l . Допустим, я нахожусь в пустом каталоге, и я создаю в нем один каталог:

mkdir folder

Когда я запускаю ls -l я получаю:

$ ls -l total 0 drwxr-xr-x 2 josh staff 68 Nov 17 15:45 folder

В этом случае количество ссылок на каталог составляет 2. Я считаю, что эти ссылки относятся к исходному имени каталога и . запись внутри каталога.

Теперь я добавляю файл (не папку) в каталог:

touch folder/file1

Теперь вывод ls -l выглядит так:

$ ls -l total 0 drwxr-xr-x 3 josh staff 102 Nov 17 15:47 folder

Почему сейчас три ссылки вместо двух? Для каждого нового файла, который я добавляю, количество ссылок увеличивается на одну. Я понимаю, почему это имеет смысл, если я добавляю новый каталог в каталог, поскольку будет создана новая ссылка (.. в новой папке), но не новый файл. Что это за дополнительные цифры? Откуда они?

1 ответ1

1

Количество ссылок - это, в основном, количество мест, в которых используется файл или каталог. Когда он обнуляется, файл или каталог удаляется. Каждый файл в каталоге использует этот каталог, и каталог не может быть удален, если в нем есть файлы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .