あるファイルのユーザー/グループの所有権と権限を別のファイルから複製するコマンドまたはフラグはありますか?権限と所有権を他のファイルとまったく同じにしますか?
答え1
GNU/Linuxにはオプションがchown
ありますchmod
--reference
chown --reference=otherfile thisfile
chmod --reference=otherfile thisfile
答え2
(組み込まれていない)LinuxやCygwinなどのGNUユーティリティを持つすべてのUnixでは、次のものを使用できます。chmod --reference
そしてchown --reference
。
あなたのシステムにACL、ACLコマンドを試してgetfacl
くださいsetfacl
。これらのコマンドはシステムによって異なりますが、多くのシステムでこのコマンドを使用してgetfacl other_file | setfacl -bnM - file_to_change
権限をコピーできます。これは所有権をコピーしません。ls -l other_file
スペースを含むユーザー名またはグループ名がないと仮定し、慎重に解析してこれを実行できます。
LC_ALL=C ls -l other_file | {
read -r permissions links user group stuff;
chown -- "$user:$group" file_to_change
}
getfacl other_file | setfacl -bnM - file_to_change
答え3
答え4
これは私にとって効果的です。
cp -p --attributes-only <from> <to>