十分簡単です。ユーザーfooがあります。 fooはfoo(main)、audio、A、B、およびグループに属します。一般的な。
通常、ファイルは foo.foo 所有権で作成されます。
しばらく私はグループと一緒にfooファイルを作成したかったです。一般的な。基本的にこれが私が見る方法です。
Cache present group
Change group to *common*
Touch alpha
Touch beta
...
Change group back.
アルファベータ(およびそれ以降のすべて)は、所有者fooが生成する必要があります。一般的な。どうすればいいですか?
PS:そうです。 bashとzshでこれをやりたいことに言及するのを忘れました。
ベストアンサー1
Bashやzshにはこの機能はありません。
電話してもいいnewgrp
。これは新しいプロセスを開始する外部コマンドです。SHELL
引数なしで環境変数で指定されたプログラムを実行します。
newgrp common <<EOS
touch alpha beta
EOS
touch belongs_to_original_group
新しいシェルが起動すると、newgrp
元のシェルのシェル変数から継承されず、環境(エクスポート)変数からのみ継承されます。そこで行われたすべての割り当ては、そこでのみ適用されます。