Führen Sie den Stapel mit icacls als geplante Aufgabe aus

595
Roey Peretz

Ich habe eine Batchdatei, die die Berechtigungen in ALLEN Baumstrukturen eines Dokuments speichert. Es befindet sich in einem UNC-Operationsverzeichnis.

goSetPriv.bat  @echo off  set /a _cnt=0 set _docdir="UNC_DCTM_PATH_TO_SCAN\*" if (%1) NEQ () set _docdir="%*" set _start=%date:~4,10% %time%  pushd UNC_OF_OP_DIR FOR /D %%I in (%_docdir%) DO ( icacls %%I /grant:r ssis_admin:R /inheritance:e > nul call :counter ) ......  counter: ...... 

Beim Ausführen von goSetPriv als geplante Task (höchste Berechtigungen, Windows 7 Server 2008R2) PROGRAMM: \ O: \ goSetPriv.bat

Es wird schnell über alle übergeordneten Verzeichnisse ausgeführt, ohne die Berechtigungen der Unterverzeichnisse und der darin enthaltenen Dateien zu ändern. Wenn ich den Batch ohne direkt von cmd aus ausführen kann (dh O:> goSetPriv.bat), führt er die Aufgabe aus, alle Unterordner und Dateien in allen übergeordneten Verzeichnissen langsam zu ändern.

Wo ist das Problem ?

Vielen Dank

2
Roey - Ich wollte Ihnen einige Tipps und eine Ressource geben, die Ihnen helfen sollte, dieses Problem vollständig zu lösen. Sie müssen die cmd.exe nicht in das Programm einfügen und sollten stattdessen einfach den vollständigen Pfad des Skripts angeben, das Argumentfeld dafür verwenden und den Start im Pfad verwenden, auch wenn es optional ist. Siehe hier: https://i.imgur.com/EU2nHe1.png für ein Beispiel dessen, worüber ich spreche. Sie möchten auch sicher sein, dass Sie über die Registerkarte "Allgemein" mit den höchsten Berechtigungen laufen. Pimp Juice IT vor 6 Jahren 0
Siehe auch meine Antwort hier: https://superuser.com/questions/1214736/windows-10-geplante-tasks-mit-workstation-lock-unlock-not-being-triggered1217125#1217125 und ignorieren einfach den unteren Abschnitt Der Name des Abschnitts lautet ** WinSCP Batch-Skriptbeispiele **, aber alles, was darüber hinausgeht, sollte helfen, alles durchzugehen, was Probleme beim Ausführen des Stapelskripts von Task Scheduler verursachen kann. Lassen Sie mich wissen, wenn Sie etwas finden, das hilfreich ist, um eine Lösung zu finden usw. Markieren Sie mich mit dem @ -Zeichen und dann gefolgt von meinem Namen zurück. Ich werde Sie darauf aufmerksam machen. Pimp Juice IT vor 6 Jahren 0

1 Antwort auf die Frage

0
Roey Peretz

Gelöst

pushd UNC_OF_OP_DIR FOR /D %%I in (%_docdir%) DO ( icacls %%I /grant:r ssis_admin:R /inheritance:e /T ) 

Aus irgendeinem Grund werden bei der manuellen Ausführung dieses Stapels alle Dateien und Unterordner durchsucht (Dateien werden nicht dazu aufgefordert). Wenn Sie es als geplante Task ausführen, müssen Sie den Traverser-Schalter implizit hinzufügen (fordert Dateien auf).