Użycie kropki (.) Jako separatora do określenia grupy w chown

34

Zawsze robiłem:

chown nimmylebby:admins file

Widzę, że to również działa:

chown nimmylebby.admins file

Może to wydawać się głupim pytaniem, ale jestem naprawdę ciekawy, jak działa to drugie. Nie jest to udokumentowane na stronie mojej chown (GNU coreutils 8.4, 10/10). Czy to może interpretacja Basha? Lub przestarzały format argumentu?

Belmin Fernandez
źródło

Odpowiedzi:

28

Ze strony podręcznika Chown (8) w systemie Mac OS X w wersji 10.9:

ZGODNOŚĆ

Poprzednie wersje narzędzia chown używały znaku kropki (``. '') Do rozróżnienia nazwy grupy. Zmieniono to na znak dwukropka (``: ''), aby nazwy użytkowników i grup mogły zawierać znak kropki.

nayden
źródło
19

Od info coreutils 'chown invocation'dla GNU coreutils:

Niektóre starsze skrypty mogą nadal używać „.” zamiast separatora „:”. POSIX 1003.1-2001 (patrz Zgodność ze standardami ) nie wymaga tego, ale dla kompatybilności wstecznej GNU chownobsługuje „.” tak długo, jak nie będzie żadnych dwuznaczności. Nowe skrypty powinny unikać używania „.” ponieważ nie jest przenośny i ponieważ ma niepożądane skutki, jeśli cały właściciel „”. grupa identyfikuje użytkownika, którego nazwa zawiera „.”.

Wstrzymano do odwołania.
źródło