Si vous êtes un utilisateur Linux, vous avez probablement entendu parler de l'application console chmod . C'est un outil utile qui permet de modifier les autorisations du système de fichiers à l'aide d'une session de terminal ou d'un émulateur de terminal. Lorsque vous l'exécutez, il modifie les autorisations que vous spécifiez sur les fichiers et les répertoires en même temps. Mais vous devrez peut-être modifier les autorisations de fichier séparément des autorisations de répertoire et vice versa. Voici comment cela peut être fait.
Il y a plusieurs façons de le faire, mais ma façon préférée et la plus fiable de le faire est de combiner chmod avec xrags et trouver outils. La commande suivante modifiera les autorisations pour les fichiers uniquement.
trouver / chemin / vers / emplacement -type f -print0 | xargs -0 chmod 644
Ici le trouver La commande répertorie tous les fichiers à l'emplacement spécifié. Le commutateur -type f lui indique de ne lister que les fichiers et d'exclure les répertoires. Le commutateur -print0 permet de traiter les noms de fichiers de telle sorte que les noms de fichier ou de répertoire contenant des espaces ou de nouvelles lignes soient correctement gérés.
Une commande similaire appropriée peut également être utilisée pour les répertoires. La seule partie que vous devez changer est -type f en -type d:
trouver / chemin / vers / emplacement -type d -print0 | xargs -0 chmod 755
Astuce: vous pouvez gagner du temps et moins de saisie en utilisant cette astuce.
- Tout d'abord, appliquez les autorisations du système de fichiers aux fichiers et aux dossiers en exécutant chmod en mode récursif:
chmod -R 644 / chemin / vers / emplacement
Il appliquera les autorisations rw-r-r à tous les fichiers et dossiers à l'emplacement spécifié.
- Ensuite, exécutez la commande pour les répertoires uniquement:
trouver / chemin / vers / emplacement -type d -print0 | xargs -0 chmod 755
C'est ça.