gpt4 book ai didi

bash - 查找具有不同 umask 的文件和目录

转载 作者:行者123 更新时间:2023-11-29 09:31:31 25 4
gpt4 key购买 nike

我有一个 umask 0002 使用 umask -S 它返回 u=rwx,g=rwx,o=rx.

我如何找到现在根据掩码设置权限的所有文件和目录?

目录为 777 - mask 和文件为 666 - mask 如果我做类似的事情

find . ! -perm $(umask -S)

它会找到所有没有权限设置为 u=rwx,g=rwx,o=rx 的文件/目录(777 - 002 有权限,但 666 - 002 是不同的权限)这对目录很有用,但是不适用于文件。

我如何找到与当前设置的 umask 具有不同权限的文件?

例子

 touch one
ls -l
-rw-rw-r-- 1 trolkura trolkura 0 kvě 4 09:01 one

umask 是 0002 所以结果是 664 ,但是当我这样做的时候

find . -type f ! -perm $(umask -S)
./one

结果是新创建的文件 bcs 它正在寻找没有 775 权限(目录权限)的文件

最佳答案

这是我的版本:

m=`umask`
fperm=`printf '0%o' $(( 0666 & ~$m ))`
dperm=`printf '0%o' $(( 0777 & ~$m ))`

find -type f -perm $fperm -o -type d -perm $dperm

关于bash - 查找具有不同 umask 的文件和目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37020508/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com