我有一个深层复杂的文件系统,其中有一些文件被意外地写入root。 我想将这些文件的所有权一次性更改回原始所有者。
我正在玩命令,如:
find /folder -type f | xargs ls -l | grep "root root"
但也有很多垃圾出来了。
我想先列出一个列表,然后在确认后只更改列表中的文件。
find /folder -type -f -uid 0
会findroot所拥有的目录下的所有文件, -user root自然也会起作用。
如果/folder下面的所有文件应该属于同一个用户/组,则可以简单地执行一个recursion的chown :
chown -R user:group /folder
使用
find /folder -uid 0 >/tmp/root.files
获取由root拥有的文件列表。 一旦你审查了你可以使用的列表
while read file do chown user:group "$file" done </tmp/root.files
和其他答案一样,使用find或者-uid 0或者-user root来查找属于root的文件。 然后使用-exec动作:
find /folder -type f -uid 0 -exec chown root:root {} \;