我正在使用以下命令更改/opt/var
下存在的集合目录和文件的所有权(使用chown(,并尝试排除.snapshot
目录及其内容。
find /opt/var/ ! -name '.snapshot' | xargs -I {} chown 2000:2000 {};
但是,它只排除.snapshot,但其内容获得了应用权限。
我是不是遗漏了什么?我正在努力实现这一目标。
首先,chmod
用于更改权限,而chown
用于更改所有者。无论如何,要排除目录,请使用-path
选项:
find /opt/var/ ! -path '/opt/var/.snapshot*' | xargs -I {} chown 2000:2000 {}
或
find /opt/var/ ! -path '*.snapshot*' | xargs -I {} chown 2000:2000 {}