NTFS Rechte per Script setzten / vererben
Heute hatte ich die unsägliche Aufgabe für über 150 Ordner die Rechte nach unten zu vererben
Ordner
|_Ordner_1 <- von hier aus sollen die Rechte nach unten vererbt werden
|___Ordner_1_1
|_Ordner_2 <- und von hier auch usw.
|__Ordner_2_1
Wenn man das alles über
Eigenschaften-> Sicherheit -> Erweitert->
„Berechtigungen für alle untergeordneten Objekte durch die angezeigten Einträge, sofern anwendbar, ersetzen“
machen möchte, ist der Tag rum und die Maustaste kaputt…
Die Lösung lautet wie immer -> ein Script muss her…
Leider sind meine Programmierkünste nicht die besten.
Also erstmal ein Programm gesucht was das ganze so abbilden kann.
Und einen Einzeiler gebastelt:
fileacl.exe P:\fad\zum\Ordner\ /INHERIT /SUB /FILES /REPLACE
Das geht also schon einmal.
Nun noch meinen Lieblings Ram angetriggert das er mal nen VB-Script zu schreibt was mir das ganze als Batch ausgibt.
Wie immer ist das bei Ram unkommentiert *g
Private Sub Command1_Click()
sPath = „S:\“
cfile = Dir(sPath, vbDirectory)
Open „C:\fileacl.bat“ For Output As #1
Do
If GetAttr(sPath & cfile) = vbDirectory And cfile <> „.“ And cfile <> „..“ Then
‚Shell „fileacl.exe “ & sPath & cfile & “ /INHERIT /SUB /FILES /REPLACE“Print #1, „fileacl.exe P:\fad\zu\root\Ordner“ & cfile & „\ /INHERIT /SUB /FILES /REPLACE“
End If
cfile = Dir
Loop Until cfile = „“
Close #1
MsgBox „fertig“
End Sub
20. Juni 2012 um 16:47
Hm… warum so kompliziert… es gibt Boardmittel dazu… nämlich icacls.exe
20. Juni 2012 um 17:24
Sehr schön!
Thxx!