2

Я командный файл, который фиксирует разрешения во ВСЕХ дерева хранилища документов. он находится в каталоге операций UNC.

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:
......

Когда я запускаю goSetPriv как запланированное задание (Высшие привилегии, Windows 7 Server 2008R2) ПРОГРАММА: \O: \goSetPriv.bat

Он быстро работает по всем родительским каталогам, не изменяя их разрешения для подкаталогов и файлов внутри них. Когда я запускаю пакет без прямого из cmd (то есть O:> goSetPriv.bat), он выполняет работу, медленно меняя все подпапки и файлы во всех родительских каталогах.

В чем проблема ?

Спасибо

1 ответ1

0

решаемая

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

По какой-то причине запуск этого пакета вручную будет проходить через все файлы и подпапки (не запрашивает файлы). Когда вы запускаете его как запланированное задание, вы должны неявно добавить переключатель перемещения (запрашивает файлы)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .