在linux上只查找权限未设置为644的目录中的文件

前端之家收集整理的这篇文章主要介绍了在linux上只查找权限未设置为644的目录中的文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我的第一个问题,虽然我已经潜伏了一段时间.

题:
我想使用find来获取权限未设置为644(或其他权限值)的目录中的文件.有没有更短的方式来写这个或只是使用-perm和-or选项并列出除644之外的每个权限类型的唯一方法

这是我希望加速的更大命令的一部分:

find /path/to/dir/ -type f -print0 | xargs -0 chmod 644

我希望只提供xargs需要更新的文件名才能加快速度.该目录有大约一百万个文件,但只有~10,000通常需要更新权限.我认为命令很慢,因为它仍然管道所有文件,无论如何.也许对更大的命令有更有效的方法.如果你知道一个,请告诉我.我仍然想知道这个问题的答案.顺便说一句,在将文件添加到目录之前,我无法更新权限.

解决方法

的!当条件为false时,operator返回true.

因此,当-perm 0644匹配具有rw-r – r–权限集的文件时,! -perm 0644匹配那些没有这些权限的那些.

您需要的命令是:

find /path/to/dir/ -type f ! -perm 0644 -print0 | xargs -0 chmod 644
原文链接:https://www.f2er.com/linux/400351.html

猜你在找的Linux相关文章