chown
命令本身不支持递归修改目录及其子目录和文件的属主。要递归地修改目录及其子目录和文件的属主,你需要使用 find
命令来查找所有需要修改的文件和目录,然后将这些文件传递给 chown
命令。
以下是一个示例,展示了如何使用 find
和 chown
命令递归地修改一个目录及其子目录和文件的属主:
find /path/to/directory -type d -exec chown new_owner:new_group {} \;
find /path/to/directory -type f -exec chown new_owner:new_group {} \;
在这个示例中,/path/to/directory
是你想要修改属主的目录路径,new_owner
和 new_group
是新的属主和属组。
解释一下这两个命令:
第一个命令使用 find
查找 /path/to/directory
下的所有子目录(-type d
),然后对每个找到的目录执行 chown
命令,将属主和属组更改为 new_owner
和 new_group
。
第二个命令使用 find
查找 /path/to/directory
下的所有文件(-type f
),然后对每个找到的文件执行 chown
命令,将属主和属组更改为 new_owner
和 new_group
。
注意:在使用这些命令时,请确保你有足够的权限来修改目标目录及其子目录和文件的属主。