arquivo em lote icacls vários diretórios com curingas, ajuda necessária

arquivo em lote icacls vários diretórios com curingas, ajuda necessária

Eu escrevi o seguinte arquivo em lote que faz um ótimo trabalho vasculhando todas as pastas começando com o número 3 e aplicando permissões de pasta a qualquer subpasta de 2010. Exemplo dos arquivos em lote está abaixo:

para /D %%f in (D:\Data\3*) faça icacls "%%f\2010" /inheritance:r /grant:r "Administradores de domínio":(OI)(CI)F

Pergunta: Como posso melhorar este script para permitir que eu aplique as permissões a uma pasta específica abaixo de QUALQUER pasta dentro das pastas que começam com 3?

aqui está um exemplo da minha tentativa fracassada:

para /D %%f in (D:\Data\3*) faça icacls "%%f*\specificfolder" /inheritance:r /grant:r "Administradores de domínio":(OI)(CI)F

Responder1

Com a seguinte árvore de diretórios:

D

Dados

31245 Cliente

qualquer pasta

pasta específica

31246 Cliente

qualquer pasta

pasta específica

O código abaixo aplicará as permissões de segurança que você especificou a ambos os diretórios chamados "specificfolder"

@echo off
for /D %%f in ("D:\Data\3*") do for /D %%d in ("%%f\*") do icacls "%%d\specificfolder" /inheritance:r /grant:r "Domain Admins":(OI)(CI)F

NOTA - Isso usa loops FOR aninhados que não são suportados pelo DOS (COMMAND.COM). Isso funcionará bem com um sistema NT (CMD.EXE).

informação relacionada