Использование точки (.) В качестве разделителя для указания группы в chown

Я всегда делал:

chown nimmylebby:admins file

Я вижу, что это также работает:

chown nimmylebby.admins file

Может показаться глупым вопросом, но мне искренне любопытно, как работает последний. Это не задокументировано в справочной странице моего chown (GNU coreutils 8.4, 10/10). Возможно, это интерпретация Баша? Или устаревший формат для аргумента?

2 ответа

Решение

Из справочной страницы chown(8) в Mac OS X версии 10.9:

СОВМЕСТИМОСТЬ

Предыдущие версии утилиты chown использовали символ точки (``.''), Чтобы различать имя группы. Он был изменен на символ двоеточия (`: ''), поэтому имена пользователей и групп могут содержать символ точки.

От info coreutils 'chown invocation' для GNU coreutils:

Некоторые старые сценарии могут по-прежнему использовать "." вместо разделителя ':'. POSIX 1003.1-2001 (см. Соответствие стандартам) не требует поддержки для этого, но для обратной совместимости GNU chown поддерживает "." до тех пор, пока нет результатов двусмысленности. Новые сценарии должны избегать использования "." потому что он не переносимый, и потому что он имеет нежелательные результаты, если весь владелец "." Группа случайно идентифицирует пользователя, имя которого содержит ".".

Другие вопросы по тегам