Quiero establecer el permiso 755 en todos los archivos y subdirectorios en un directorio específico, pero quiero ejecutar chmod 755 solo para aquellos componentes que no tienen permiso 755.
find /main_directory/ -exec chmod 755 {} \;
Si el find
comando devuelve una lista larga, esto llevará mucho tiempo. Sé que puedo usar el comando stat para verificar el permiso de nivel de archivo Octal de cada componente y luego usar if-else para alternar el permiso de archivo, pero ¿hay algún enfoque de línea única que use find
y xargs
para verificar primero qué permiso tiene el archivo / directorio? , y luego use chmod
para cambiarlo a 755 si está configurado en otra cosa.
u+rw,go+r,go-w,ugo+X
: tenga en cuenta la capital.