Мне нужно найти все файлы в каталоге, где совпадают группы и другие разрешения (например, те, в которых членство группы в файле на самом деле не влияет на доступ).
Так как для этого есть только 8 возможностей (x00, x11, x22 и т.д.) Я думал, что могу просто искать по этим разрешениям, но не могу найти способ явно сопоставить некоторые биты разрешений, не сопоставив их все (например, сопоставить все 000, 100, 200, 300 и т.д. Для x00).
Я построил длинное выражение для поиска:
find . \( \
-perm 000 -o -perm 011 -o -perm 022 -o -perm 033 [...] \
-perm 100 -o -perm 111 -o -perm 122 -o -perm 133 [...] \
[...]
\) -ls
И это работает, но кажется, что это очень не элегантно (это более 8 символов ... и это до того, как я поместил какие-либо предложения по выбору пути, которые понадобятся ...).
Есть ли способ лучше?
Изменить: мне просто пришло в голову, что это игнорирует разрешения SUID/SGID. Добавление их сделает команду еще длиннее ... надеюсь, есть лучший способ!