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