私は次のバッチファイルを作成しました。これは、番号3で始まるすべてのフォルダーをくまなく調べ、フォルダーのアクセス許可を2010サブフォルダーに適用するのに最適です。バッチファイルの例を以下に示します。
for/D %% f in(D:\ Data\3 *)do icacls "%% f\2010"/inheritance:r/grant:r "Domain Admins" :( OI)(CI)F
質問:このスクリプトを改善して、3で始まるフォルダー内の任意のフォルダーの下にある特定のフォルダーにアクセス許可を適用できるようにするにはどうすればよいですか?
これが私の失敗した試みの例です:
for/D %% f in(D:\ Data\3 *)do icacls "%% f *\Specificfolder"/inheritance:r/grant:r "Domain Admins" :( OI)(CI)F
次のディレクトリツリーを使用します。
D
データ
31245クライアント
anyfolder
特定のフォルダ
31246クライアント
anyfolder
特定のフォルダ
以下のコードは、指定したセキュリティ権限を「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
注-これは、DOS(COMMAND.COM)でサポートされていないネストされたFORループを使用します。これは、NT(CMD.EXE)システムで正常に機能します。