Ich habe eine Excel-Tabelle mit einer Liste von Benutzernamen
Jeder Benutzer hat den folgenden Code. Ich muss nur einen Weg finden, First.Last durch die Namen in der Excel-Tabelle zu ersetzen. Es gibt über 800 Namen und ich kann dies manuell tun. Es ist einfach sehr langweilig.
echo Y | takeown /F "F:\Users\First.Last" /R
icacls "F:\USERS\First.Last" /reset /T /C /Q
icacls "F:\USERS\First.Last" /inheritance:r /T /C /Q
icacls "F:\USERS\First.Last" /grant:r system:(oi)(ci)f /t /c /Q
icacls "F:\USERS\First.Last" /grant:r "Site admins":(oi)(ci)f /t /c /Q
icacls "F:\USERS\First.Last" /grant:r "Domain admins":(oi)(ci)f /t /c /Q
icacls "F:\USERS\First.Last" /grant:r "CREATOR OWNER":(OI)(CI)F /T /C /Q
icacls "F:\USERS\First.Last" /grant:r First.Last:(oi)(ci)f /t /c /Q
icacls "F:\USERS\First.Last" /remove:g "everyone" /T /C /Q
icacls "F:\USERS\First.Last" /remove:g "administrators" /T /C /Q
icacls "F:\USERS\First.Last" /remove Everyone /T /C /Q
icacls "F:\USERS\First.Last" /remove:g "COURTS\administrator.account" /T /C /Q
icacls "F:\USERS\First.Last" /remove "COURTS\administrator.account" /T /C /Q
icacls "F:\Users\First.Last" /setowner "COURTS\First.Last" /c /t /Q
icacls "F:\USERS\First.Last" /inheritance:e /T /C /Q
net share First.Last$ /delete
icacls "F:\USERS\First.Last" /remove:g "system" /T /C /Q
icacls "F:\USERS\First.Last" /remove "system" /T /C /Q
icacls "F:\USERS\First.Last" /remove:g "Site Admins" /T /C /Q
icacls "F:\USERS\First.Last" /remove "Site Admins" /T /C /Q
icacls "F:\USERS\First.Last" /remove:g "Domain Admins" /T /C /Q
icacls "F:\USERS\First.Last" /remove "Domain Admins" /T /C /Q
icacls "F:\USERS\First.Last" /remove:g "Creator Owner" /T /C /Q
icacls "F:\USERS\First.Last" /remove "Creator Owner" /T /C /Q
microsoft-excel
vba
windows-server-2003
vbscript
Software macht Spaß
quelle
quelle
Antworten:
Wenn Sie eine Namensliste von Excel benötigen, kopieren Sie die Namensliste und fügen Sie sie in den Editor ein. Speichern Sie sie als names.txt ( siehe unten).
tue so als ob der Inhalt von names.txt wäre
Gehe zum Merkzettel und füge diesen ein: (speichere ihn als doit.bat )
Diese Zeile ruft die perms.bat für jeden in names.txt gefundenen Benutzernamen auf
Wenn Sie alle Benutzer in f: \ users *. * Und forgo excel all together ausführen möchten, gehen Sie wie folgt vor: Anstelle der obigen for-Anweisung. Gehe zum Merkzettel und füge diesen ein in:
Speichern Sie es und nennen Sie es doit.bat
Öffne den Notizblock und platziere deinen Code leicht verändert. Speichern und benennen Sie es perms.bat
gehe zur administrativen Eingabeaufforderung.
Wenn Sie dies in Echtzeit ausführen möchten, gehen Sie wie folgt vor:
Typ doit.bat
Wenn Sie die Befehle in einer Datei speichern möchten:
Backup perms.bat sonst wo. Benennen Sie dann txt.bat in perms.bat um und führen Sie doit.bat aus. Wenn Sie dann doit.bat ausführen, erscheinen alle Befehle im Klartext in all.txt . Sie können die Ergebnisse dann kopieren und bei Bedarf in Excel einfügen.
quelle