私はこれを持っています、確かに少し厳しいですが仕事をします、ドライブで実行するとドライブ上のファイルとフォルダーへのすべての権利を与えます、今私はそれをサブディレクトリに入れるのを手助けする必要があるので、私は必要ありませんすべてのフォルダ内にbatスクリプトをコピーして実行する必要があります。
takeown /f *
icacls * /grant Administrator:F
icacls * /grant Administrators:F
icacls * /grant SYSTEM:F
icacls * /grant "Authenticated Users":F
ドライブを再帰的にトラバースするにはどうすればよいですか?
短い答え:/t
を(i)caclsに追加
長い答え:
これは、ユーザーがファイルにアクセスできるようにするときに使用するスクリプトです。各フラグの機能に関するコメントが含まれています。これを%AppData%
フォルダのどこかにあるバッチファイルに入れるだけです。
REM --v2 -----------------------------------------------------------
takeown /r /d y /f %1
icacls %1 /t /grant Everyone:F
REM takeown /r /d y /f will set the owner to the Administrators group recursively.
REM /t makes it recursive
REM /grant Sets the permision to the following user, replaces existing permissions for the specified uesr.
REM :f Grants full controll permission.
REM ----------------------------------------------------------------
REM --v1 -----------------------------------------------------------
REM cacls %1 /t /e /g Everyone:f
REM /t makes it recursive
REM /e Edits the ACL instead of replaceing it
REM /g Grants permissions to the following users
REM :f Grants full controll permission.
REM ----------------------------------------------------------------
次に、%AppData%\Microsoft\Windows\SendTo
にバッチスクリプトへのショートカットを作成します。
そのショートカットのプロパティを編集してAdvanced...
に移動し、ボックスRun as Administrator.
をオンにします
これでright click menu -> Send To
にFix Permissions
というアイテムが作成され、Send To
を実行するすべてのファイルまたはフォルダーに、EveryoneグループにFull Access
権限が付与されます。フォルダで実行すると、再帰的に実行され、フォルダ内のすべての子にアクセス許可が適用されます。
バッチファイルを%AppData%
フォルダーに保存します。これは、ドメインにいて、それが私の移動プロファイルの一部になっているため、接続して接続しているすべてのコンピューターで使用できるようになるためです。
これはネットワーク共有で機能しますか?
Takeown /f *
icacls * /grant Administrator:F
icacls * /grant Administrators:F
icacls * /grant SYSTEM:F
icacls * /grant "Authenticated Users":F
icacls * /grant "doamin\users":R