我想仅将目录的属性复制到现有目录。
例如...
# mkdir /var/tmp/target-dir
# ls -ald /var/mail
drwxrwsr-x 2 root mail 4096 4月 27 2018 /var/mail
我的图像如下..我发现 cp 命令有 --attributes-only 选项,但这不是我的期望。
# cp --attributes-only /var/mail /var/tmp/target-dir
cp: -r not specified; omitting directory '/var/mail'
我只想复制属性,不想复制 /var/mail 目录的内容。
有什么办法可以解决这个问题吗?
答案1
我可以用以下三个命令来解决。
chmod --reference=/var/mail /var/tmp/target-dir
chown --reference=/var/mail /var/tmp/target-dir
touch --reference=/var/mail /var/tmp/target-dir
这是我想复制的归因参考。
# ls -ald /var/mail
drwxrwsr-x 2 root mail 4096 4月 27 2018 /var/mail
这是目标目录。 (权限、所有者、时间戳不同)
# ls -ald /var/tmp/target-dir
drwxrwxr-x 2 user1 user1 4096 7月 16 07:09 /var/tmp/target-dir
1.使用chmod命令复制权限
# sudo chmod --reference=/var/mail /var/tmp/target-dir
# ls -ald /var/tmp/target-dir
drwxrwsr-x 2 user1 user1 4096 7月 16 07:09 /var/tmp/target-dir
2.使用chown命令复制所有者
# sudo chown --reference=/var/mail /var/tmp/target-dir
# ls -ald /var/tmp/target-dir
drwxrwsr-x 2 root mail 4096 7月 16 07:09 /var/tmp/target-dir
3.使用touch命令复制时间戳
# sudo touch --reference=/var/mail /var/tmp/target-dir
# ls -ald /var/tmp/target-dir
drwxrwsr-x 2 root mail 4096 4月 27 2018 /var/tmp/target-dir
最后,/var/tmp/target-dir 与/var/tmp/mail 具有相同的属性。