Affecter des droits NTFS à plusieurs répertoires

Affecter des droits NTFS à plusieurs répertoires - Logiciels - Windows & Software

Marsh Posté le 11-03-2011 à 16:12:44    

Bonjour,  
 
j'aimerais crée un .bat qui me permettrait de donner les droits Full control à des repertoires bien précis. J'aimerais que ces répertoires soient listés dans un fichier txt.  
 
J'ai utiliser la commande suivante mais cela ne donne rien:  
 
@echo off  
FOR /D %%i in (text.txt) do CACLS %%i /T /G Nomdu domaine\Nomdu groupe:F  
 
 
Merci d'avance pour votre aide car je suis vraiment bloqué
 

Reply

Marsh Posté le 11-03-2011 à 16:12:44   

Reply

Marsh Posté le 12-03-2011 à 12:37:50    

isole déja la cause du problème :
soit la boucle for
soit la commande cacls
 
test les séparement


---------------
Quand on aime on ne compte pas. Quel Dilemme lorsque l'on aime compter !
Reply

Marsh Posté le 13-03-2011 à 12:59:20    

Je viens de suivre tes conseils et il semblerait que le souci soit au niveau de la boucle FOR mais je ne vois pas pourquoi.
 
Cependant il y a un autre souci avec la commande CACLS car je me rend compte que celle-ci ne rajoute pas des droits mais supprimer les anciens droit sur le répertoire pour y ajouter les nouveau or j'aimerais juste un ajout de droit sans supprimer l'existant.
 
 
Sa serait sympa si quelqu'un pouvait m'aider

Reply

Marsh Posté le 13-03-2011 à 13:31:03    

Je viens de résoudre le problème de remplacement des acls en utilisant /E à la place du /T mais je ne trouve toujours pas commande résoudre le souci de la boucle FOR

Reply

Marsh Posté le 13-03-2011 à 13:35:11    

for /f plutôt que /d ?


---------------
Quand on aime on ne compte pas. Quel Dilemme lorsque l'on aime compter !
Reply

Marsh Posté le 13-03-2011 à 13:49:41    

JE viens de réussir à faire fonctionner la boucle For, cependant je suis obliger de taper le nom de mes répertoires un par un au lieu qu'il aille les chercher dans le fichier txt.
 
FOR %%i IN (tata titi) do CACLS %%i /E /G Utilisateurs:F
 
tata et titi sont les noms de répertoire, mon problème est que j'en ai 300 et je ne veux pas à avoir à taper chacun d'entre eux.

Reply

Marsh Posté le 13-03-2011 à 19:57:13    

je me répète : for /f %%i in (list.txt) do @echo %%i
 
edit : faudra jouer avec un delim pour éviter les noms de répertoires avec des espaces
 
;)


Message édité par Xspawn_Lpc le 13-03-2011 à 19:57:49

---------------
Quand on aime on ne compte pas. Quel Dilemme lorsque l'on aime compter !
Reply

Marsh Posté le 14-03-2011 à 12:59:31    

Salut,
 
Plutôt que d'utiliser un "vieux" batch, pourquoi ne pas scripter avec WSH / VBScript ?  
 
C'est quand même plus souple au niveau de ce que tu peux faire ! Sans parler de la vitesse d'exécution qui est souvent bien meilleure.
 
Premier lien d'un petite recherche avec google :
http://www.tek-tips.com/faqs.cfm?fid=5734
 
Te reste à prendre les parties qui t'intéressent, soit principalement la  méthode SetACLs() et d'y ajouter une lecture de ton fichier d'entrée avec tes dossiers (en cherchant "vbscript read text file" et tu devrais avoir 10000 exemples sur comment faire).
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed