tobiisfreaky
Goto Top

NTFS-Ordnerberechtigung ändern mit FOR-Schleife und cacls

Guten Morgen Leute,

ich muss für eine Exchange Migration eine ganz Menge Ordner erstellen, mit bestimmten Berechtigungen für diese.
Um mir das Arbeiten zu erleichtern habe ich eine Batch-Datei, die das für mich übernimmt - aber nicht ganz so funktioniert wie ich will!
Aus einer textdatei sollen alle Benutzer aus den jeweiligen Abteilungen (getrennt in *.TXT Files) in einer Variblen gespeichert und ein neuer Ordner erstellt werden.
Zusätzlich liest die Batch Datei in einem 2. Vorgang die Text-Datei erneut aus und fügt die Benutzer in einer FOR-Schleife mit CACLS hinzu.
Problem ist nur, dass beim ersetzen aller Access Control Entries das ganze mit Sind sie sicher ... J abgearbeitet werden muss....
Das soltle auch noch automatisch in die Batch, aber ich weiß nicht, wie ich das mache.
Evt. nur eine Kleinigkeit... Ich komme aber nicht drauf, obwohl ich schon einiges versucht habe.

Hier der Code:

FOR /F %%i IN (C:\Programme\test\Ordnersolltestheissen.txt) DO @MKDIR "C:\Programme\test\%%i"  
FOR /F %%u IN (C:\Programme\test\Ordnersolltestheissen.txt) DO @CACLS "C:\Programme\test\%%u" /T /G "DOMAIN\%%u":F  

FOR /F %%a IN (C:\Programme\test\Ordnersolltestheissen.txt) DO @CACLS "C:\Programme\test\%%a" /E /G "DOMAIN\USER1:F  
FOR /F %%a IN (C:\Programme\test\Ordnersolltestheissen.txt) DO @CACLS "C:\Programme\test\%%a" /E /G "DOMAIN\administrator:F  

Der angegeben Pfad ist nur ein Test-Pfad zu einer Datei, wird selbstverständlich noch geändert. Aus dieser Datei werden die User in die Variable gesetzt.
Hinter Zeile 2 wird die erste "Sind Sie sicher"-Abfrage gestartet und zwar so oft, wie auch Einträge in der Text-Datei sind.
Bei 10 Einträgen in der Text-Datei wird man 10 mal gefragt... bisschen nervig bei 300 Usern...

Ich wäre für Hilfe sehr dankbar!

(Nehme auch gerne andere Ratschläge zu meiner Problemlösung an, also Scriptgestaltung. Bezogen auf dieses Script würde ich aber gerne den Fehler wissen, bzw. die Problemlösung)


Mit freundlichen Grüßen

Freaky

Content-ID: 98300

Url: https://administrator.de/contentid/98300

Ausgedruckt am: 22.11.2024 um 10:11 Uhr

Biber
Biber 02.10.2008 um 09:53:28 Uhr
Goto Top
Moin TobiisFreaky,

die cACLs.exe-Versionen, die ich kenne (egal ob deutsch oder englisch) kennen keinen Schalter /y oder /q für die automatsche Beantwortung der Sicherheitsabfrage.
Aber Du kannst in diesem Fall die Antwort "j" (oder "y" bei der US-Version) per Echo und Pipe geben.

Statt jetzt:: @cacls unterordner ....
Mit Bestätigung: @echo j|cACLs unterordner ....

Grüße
Biber
TobiisFreaky
TobiisFreaky 02.10.2008 um 10:01:31 Uhr
Goto Top
Haha... ich und meinen Denkfehler
Ich hatte auch an Echo und pipe gedacht, allerdings statt j ein y gesetzt... Das war der Grund, warum dies nicht funktioniert hat anscheinend.

Vielen Dank Biber face-smile