Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Question droits UNIX

8 réponses
Avatar
Sebastien
Bonjour,
j'ai une question qui est peut être bête mais je ne trouve pas la
réponse.
J'ai un répertoire qui contient des sous-répertoires, et je veux
pouvoir tous mettre en lecture et écritire.

alors j'ai penssé faire un chmod 777 -r mon_répertoire , sa marche
mais ça me met tous les fichiers en exécutable... c'est pas ce que je
veux...
et si je fait un chmod 666 je ne peux pas rentrer dans les
répertoires...

Une solution ?

Merci.

8 réponses

Avatar
Matthieu Moy
Sebastien writes:

alors j'ai penssé faire un chmod 777 -r mon_répertoire , sa marche
mais ça me met tous les fichiers en exécutable... c'est pas ce que je
veux...
et si je fait un chmod 666 je ne peux pas rentrer dans les
répertoires...

Une solution ?


find . -type d -exec chmod 777 {} ;

ou quelque chose comme ça.

--
Matthieu

Avatar
serval2412
J'ai un répertoire qui contient des sous-répertoires, et je veux
pouvoir tous mettre en lecture et écritire.

alors j'ai penssé faire un chmod 777 -r mon_répertoire , sa marche
mais ça me met tous les fichiers en exécutable... c'est pas ce que je
veux...
et si je fait un chmod 666 je ne peux pas rentrer dans les
répertoires...

Une solution ?
find . -type d | xargs chmod a+x


explications :
find . -type te donnera la liste de tous les répertoires partant du
répertoire courant

xargs récupère la liste fournit pas le "|" (pipe) et exécute la commande
qui suit sur l'ensemble de la liste

Donc pour tous les répertoires trouvés, on donne à tous ("a"="all", le
droit d'exécution)

Avatar
Sebastien
"" a écrit avec sa plus belle
plume :

Une solution ?
find . -type d | xargs chmod a+x


explications :
find . -type te donnera la liste de tous les répertoires partant du
répertoire courant

xargs récupère la liste fournit pas le "|" (pipe) et exécute la commande
qui suit sur l'ensemble de la liste

Donc pour tous les répertoires trouvés, on donne à tous ("a"="all", le
droit d'exécution)


Merci, c'est exactement ce que je cherchais.


Avatar
Vincent Ramos
Sebastien égrapsen en  :

Merci, c'est exactement ce que je cherchais.


Vous pouvez aussi utiliser chmod -r a+rwX /répertoire.

À propos de la permission symbolisée par « X » (!= « x ») :
« exécution, uniquement si le fichier est un répertoire, ou s?il a
déjà une autorisation d?exécution pour une des catégories
d?utilisateur (s?il s?agit donc bien d?un fichier exécutable) » (man
chmod).

Avatar
Vincent Ramos
[Supersedes]
Sebastien égrapsen en  :

Merci, c'est exactement ce que je cherchais.


Vous pouvez aussi utiliser chmod -r a+rwX /répertoire.

À propos de la permission symbolisée par « X » (!= « x ») :
« exécution, uniquement si le fichier est un répertoire, ou s'il a
déjà une autorisation d'exécution pour une des catégories
d'utilisateur (s'il s'agit donc bien d?un fichier exécutable) » (man
chmod).

Avatar
Vincent Ramos
[Supersedes]
Sebastien égrapsen en  :

Merci, c'est exactement ce que je cherchais.


Vous pouvez aussi utiliser chmod -r a+rwX /répertoire.

À propos de la permission symbolisée par « X » (!= « x ») :
« exécution, uniquement si le fichier est un répertoire, ou s'il a
déjà une autorisation d'exécution pour une des catégories
d'utilisateur (s'il s'agit donc bien d'un fichier exécutable) » (man
chmod).

Avatar
lhabert
"" :

find . -type d | xargs chmod a+x


find . -type d -print0 | xargs -0 chmod 777

Sinon, tu te fais avoir dès qu'il y a un nom de fichier avec un espace
dedans. (Oui, je radote.)

Avatar
Sebastien
Vincent Ramos a écrit avec sa
plus belle plume :

Vous pouvez aussi utiliser chmod -r a+rwX /répertoire.

À propos de la permission symbolisée par « X » (!= « x ») :
« exécution, uniquement si le fichier est un répertoire, ou s'il a
déjà une autorisation d'exécution pour une des catégories
d'utilisateur (s'il s'agit donc bien d'un fichier exécutable) » (man
chmod).


Merci, effectivement c'est encore mieux ;-)