icacls Batchdatei mehrere Verzeichnisse mit Platzhaltern Hilfe benötigt

icacls Batchdatei mehrere Verzeichnisse mit Platzhaltern Hilfe benötigt

Ich habe die folgende Batchdatei geschrieben, die alle Ordner, die mit der Nummer 3 beginnen, hervorragend durchsucht und Ordnerberechtigungen auf alle 2010-Unterordner anwendet. Ein Beispiel für die Batchdatei finden Sie unten:

für /D %%f in (D:\Data\3*) mache icacls "%%f\2010" /inheritance:r /grant:r "Domänenadministratoren":(OI)(CI)F

Frage: Wie kann ich dieses Skript verbessern, damit ich die Berechtigungen auf einen bestimmten Ordner unter JEDEM Ordner innerhalb der Ordner anwenden kann, die mit 3 beginnen?

hier ist ein Beispiel für meinen fehlgeschlagenen Versuch:

für /D %%f in (D:\Data\3*) führe icacls "%%f*\spezifischerOrdner" aus /inheritance:r /grant:r "Domänenadministratoren":(OI)(CI)F

Antwort1

Mit folgendem Verzeichnisbaum:

D

Daten

31245 Kunde

beliebiger Ordner

spezifischer Ordner

31246 Kunde

beliebiger Ordner

spezifischer Ordner

Der folgende Code wendet die von Ihnen angegebenen Sicherheitsberechtigungen auf beide Verzeichnisse mit dem Namen „specificfolder“ an.

@echo off
for /D %%f in ("D:\Data\3*") do for /D %%d in ("%%f\*") do icacls "%%d\specificfolder" /inheritance:r /grant:r "Domain Admins":(OI)(CI)F

HINWEIS - Dies verwendet verschachtelte FOR-Schleifen, die von DOS (COMMAND.COM) nicht unterstützt werden. Dies funktioniert jedoch problemlos mit einem NT-System (CMD.EXE).

verwandte Informationen