find /path/to/directory \( -type d -or -type f \) ! -lname '*' -exec chown root:root {} \;
注释:
1./path/to/directory : 从当前目录开始查找
2.\( -type d -or -type f \)
:
-type d
:查找目录。-type f
:查找文件。-or
:逻辑或,表示只要满足-type d
或-type f
中的任意一个条件即可。
3.***链接文件的所属用户和所属组无法改变,因此在修改时应该判断是否为链接文件***
! -lname '*':排除符号链接文件。!表示逻辑非,-lname '*'表示找到符号链接文件。
4.-exec chown root:root {} \;
exec
:执行后面的命令。chown root:root {}
:将找到的目录或文件的拥有者修改为root:root
。{}
:表示find
找到的每个文件或目录的路径。\;
:表示-exec
命令的结束。