2010-12-07 6 views
60

Quiero encontrar los archivos no legibles en mi directorio (por ejemplo, los archivos con g-r). Así que he intentado esto:Usando `find -perm` para encontrar cuando un permiso no está configurado

find . -perm -g-r

Me muestra todos los archivos ?? Así que he intentado esto:

find . -perm -g+r

Y me mostró que sólo los archivos legibles. Parece que -perm -g-r coincide con todos los archivos. Estoy usando CentOS 5.5. ¿Estoy haciendo algo mal? No parece que -perm -g-r hace algo útil.

Respuesta

83

Probar:

find . ! -perm -g+r

+3

¡Eso funcionó! Todavía estoy desconcertado por '-perm -g-r' que no funciona, pero bueno. – User1

+0

Es una extensión obvia para encontrar archivos que no son ejecutables, también. ¡Gracias! –

+0

¿Qué ocurre si quiero limitar mi búsqueda a archivos y no a directorios, y quiero un '-maxdepth' de 2? Quiero decir, ¿cómo niego las permanentes mientras afirmo las otras cosas? EDITAR: No importa. Puedes negar cualquier opción con! Al principio no parecía funcionar, pero realmente lo era. ¡Lo hice 'encontrar -maxdepth 2! -perm -g + r -type d' y encontró directorios a una profundidad de 2 que no tenían permiso de lectura grupal. –

21

Si usted quiere encontrar los archivos que no son legibles por que, podría utilizar

find . ! -readable 
+6

Esto funciona para Linux, pero el BSD encontrado en Mac (desde 2008) no lo admite. –

+0

Buen punto. Probablemente hay bastantes versiones de averiguar que no admiten lectura. – Charley

-3

Usted fue capaz de ver todos los archivos cuando ejecutó la instrucción a continuación, porque la estaba ejecutando como raíz.

find . -perm -g-r 

Intente ejecutar como un usuario normal.

+7

Los atributos del archivo (permisos, propiedad, tamaño, etc.) no dependen del usuario. Creo que tu respuesta es incorrecta. –

+0

Además, OP preguntó cómo encontrar los bits * no * establecidos, lo que hace la respuesta de Tim Cooper y la suya falla. –

Cuestiones relacionadas