Question [resolu]Icacls dasn uns cript Powershell

Plus d'informations
il y a 13 ans 4 mois #8207 par otokonohito
Bonjour,

J'essai d'utiliser Icacls pour donner des droits NTFS à un ensemble de dossiers mais je rencontre un problème que je n'arrive pas à résoudre.

Dans une boucle j'ai ceci :
[code:1]Icacls \"$chemin\$i\" /grant \"$user:«»(OI)(CI)(F)\"[/code:1]
qui me retourne le message suivant
[code:1]Paramètre non valide « (OI)(CI)(F) »[/code:1]

Si à la place de $user je mets le nom d'un utilisateur, ca fonctionne.
[code:1]Icacls \"$chemin\$i\" /grant \"user1:«»(OI)(CI)(F)\"[/code:1]

Résultat
[code:1]fichier traité : C:\temp\user1
1 fichiers correctement traités ; échec du traitement de 0 fichiers[/code:1]

Le problème c'est que j'ai user1 comme utilisateur dans mon dossier user1 mais aussi dans mon dossier user2, etc.

j'ai essayé avec cote sans cote
$user+\":(OI)(CI)(F)\"
$user:`(OI`)`(CI`)`(F`)
mais rien n'y fait.

Merci de votre aide<br><br>Message édité par: otokonohito, à: 6/12/10 12:58

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 4 mois #8209 par Jacques Barathon
La syntaxe $nom:texte laisse croire à PowerShell que tu vas essayer d'accéder à la variable $texte dans le drive $nom.

Pour lui passer explicitement la variable $nom - ou plutôt $user dans ton cas - utilise la syntaxe suivante :

[code:1]
lcacls \&quot;$chemin\$i\&quot; /grant \&quot;$($user):«»(OI)(CI)(F)\&quot;
[/code:1]

Sinon, as-tu regardé la commande set-acl ? L'objet ACL à manipuler peut être un peu plus compliqué à créer au départ que la chaîne \&quot;(OI)(CI)(F)\&quot;, mais les possibilités de paramétrage et le couplage avec get-acl permettent d'aller plus vite sur des grands volumes de données à traiter.<br><br>Message édité par: janel, à: 6/12/10 11:39

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 13 ans 4 mois #8212 par otokonohito
Bonjour,

comment n'y ai-je pas penser:blush:
Merci

Mais je croyais que c'était valable que pour les propriétés d'objet du type $($object.properties) entre cote.

Je n'ai pas penser à set-acl. C'est plus propre je vais essayer avec.
Merci encore pour toutes ces infos.

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.076 secondes
Propulsé par Kunena