

Ubuntu上で `chown` のmanを引くと、書式は下記のように2行で記載されているのですが、

>
[code]

>     SYNOPSIS
>           chown [OPTION]... [OWNER][:[GROUP]] FILE...
>           chown [OPTION]... --reference=RFILE FILE...
>  
[/code]

ネット上で公開されている `chown` のmanでは、`.GROUP` の書式を加えて3行で記載されているものがありました。

>
[code]

>     chown [オプション]... OWNER[.[GROUP]] FILE...
>     chown [オプション]... .GROUP FILE...
>     chown [オプション]... --reference=RFILE FILE...
>  
[/code]

<https://linuxjm.osdn.jp/html/GNU_fileutils/man1/chown.1.html>

実際に `.GROUP` の書式を試すと、意図したとおり動いているように見えるのですが、`.GROUP` の書式は `chown` の仕様なのでしょうか？  
過去の互換性の為に残っているが、非推奨の書式だったりするのでしょうか？

[code]

    $ chown .test test.txt
    
[/code]


CC BY-SA 4.0
2022-09-14T22:23:18.840
91110
2022-09-15T02:18:48.827
2022-09-15T01:34:07.500
3060
4260
question
linux ubuntu
chown コマンドでグループを指定する際、区切り文字に . (ドット) を使う書式は仕様なのか


オイラの記憶によると

  * グループ名指定を `.` で始めてよいのは `chown` の古い古い仕様
  * ユーザー名にドットを含んでよいことになったので `chown firstname.familyname files` のような書き方に対応するため、グループ名指定は `:` で始めるように `chown` の仕様変更があった

<https://serverfault.com/questions/194295/>

オイラんちの `hppa2.0w-hp-hpux11.11` の `/bin/chown` でも（タイムスタンプが２０００年だ） `chown .soft
hoge.txt~` に対して `chown: .softというユーザ ID はありません。` とエラーが出るので、まあ相当に古い話っス。

現代では `chown .group` は使えない `chown :group` は使えると解釈したほうがよさそうです。


CC BY-SA 4.0
2022-09-14T23:26:13.270
91111
2022-09-15T02:18:48.827
2022-09-15T02:18:48.827
8589
8589
91110
answer


[前回の回答](https://ja.stackoverflow.com/a/90553/4236)とも被りますが、Linuxは外部パッケージの寄せ集めであることを意識する必要があります。

Ubuntuでパッケージ検索すると`chown`は[GNU core
utilitiesパッケージ](https://packages.ubuntu.com/jammy/coreutils)で提供されていることがわかります。  
[GNU core
utilities](https://www.gnu.org/software/coreutils/)（というよりGNUのツール）は伝統的にmanpageはあまり期待しておらず自前のinfoシステムで記述する傾向があります。今はオンラインで参照することができ、[chown](https://www.gnu.org/software/coreutils/manual/html_node/chown-
invocation.html)のページもあります。ここには

> Some older scripts may still use ‘.’ in place of the ‘:’ separator. POSIX
> 1003.1-2001 (see Standards conformance) does not require support for that,
> but for backward compatibility GNU chown supports ‘.’ so long as no
> ambiguity results, although it issues a warning and support may be removed
> in future versions. New scripts should avoid the use of ‘.’ because it is
> not portable, and because it has undesirable results if the entire
> owner‘.’group happens to identify a user whose name contains ‘.’.

と`.`記法は互換のために残されており、将来的には削除されると書かれています。

なお、 <https://linuxjm.osdn.jp/html/GNU_fileutils/man1/chown.1.html>
を参照されたようですが、fileutilsは2002年に他のパッケージと統合してcoreutilsにリネームされています。つまり、20年以上前のドキュメントであることを理解したうえで参照する必要があります。


CC BY-SA 4.0
2022-09-14T23:36:57.890
91112
2022-09-14T23:36:57.890
4236
91110
answer