386 votes

Comment faire pour que le chown fonctionne de manière récursive ?

J'ai un répertoire appelé pdfs qui contient un tas de sous- et sous-sous-répertoires. Je veux changer la propriété de tous les fichiers PDF dans tous les sous-dossiers. Je viens d'essayer ceci :

chown -R someuser:somegroup *.pdf

...mais cela n'a pas changé la propriété des PDFs dans les sous-répertoires. L'utilisateur et le groupe existent bien.

Selon la page de manuel de chown le -R devrait signifier récursif :

-R, --recursive
          operate on files and directories recursively

Qu'est-ce que je rate ?

0voto

Eduard Florinescu Points 2616

を使用しています。 tree à la place :

 sudo tree -fai ~/.blabla  | xargs -L1 -I{} sudo chown youruser:youruser {}

Veillez également à ne pas exécuter de chown ou chmod récursif sur le répertoire '/' ou tout autre répertoire système.

0voto

masterxilo Points 438

Pour devenir le propriétaire de tous les fichiers d'un répertoire, utilisez

find directory -type f -name '*' | sudo xargs -d '\n' chown $USER

au lieu de

sudo chown $USER directory\*

o

sudo chown --recursive $USER directory

qui pourrait ne pas fonctionner s'il y a trop d'arguments produits par * (trop de fichiers dans le répertoire) ou qui ne fait pas ce que vous voulez respectivement.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X