Para modificar recursivamente los permisos a todos los ficheros bajo el directorio actual.
find . -type f -print0 | xargs -0 chmod 644
El comando utiliza find junto con xargs para cambiar los permisos de archivos en el directorio actual y sus subdirectorios. Aquí está desglosado:
find . -type f -print0: Este comando busca archivos (-type f) en el directorio actual (.) y sus subdirectorios. La opción-print0se utiliza para imprimir las rutas de los archivos encontrados separadas por caracteres nulos en lugar de espacios o saltos de línea. Esto es importante para manejar correctamente los nombres de archivo que contienen espacios u otros caracteres especiales.|: El símbolo de tubería (|) se utiliza para redirigir la salida estándar del comandofindal comando siguiente (xargs).xargs -0 chmod 644:xargses una utilidad que toma la lista de archivos generada porfindy ejecuta un comando en cada uno de esos archivos. En este caso,-0indica quexargsdebe interpretar las entradas como separadas por caracteres nulos, lo cual coincide con la opción-print0defind. Luego,chmod 644se utiliza para cambiar los permisos de cada archivo a 644, lo que significa que los archivos serán legibles y escribibles por el propietario y solo legibles por otros usuarios.
En resumen, este comando encuentra todos los archivos en el directorio actual y sus subdirectorios, y luego cambia los permisos de esos archivos para que sean legibles y escribibles por el propietario y solo legibles por otros usuarios. La combinación de find y xargs permite realizar esta operación en múltiples archivos de manera eficiente y segura.