Projects という名前の親フォルダーがあり、その下には別のフォルダー名 (Project1、Project2 など) を持つ 400 を超えるフォルダーがあります。各プロジェクト フォルダーの下には、管理と呼ばれる標準フォルダーがあり、アクセスを制限する必要がありますが、そうではありません。すべてのプロジェクト内で、この管理サブフォルダーのアクセス許可を変更したいと思います (同じアクセス許可)。誰かがこれを行う方法についてアイデアを持っていれば、本当に感謝しています。
スコット。
Projects という名前の親フォルダーがあり、その下には別のフォルダー名 (Project1、Project2 など) を持つ 400 を超えるフォルダーがあります。各プロジェクト フォルダーの下には、管理と呼ばれる標準フォルダーがあり、アクセスを制限する必要がありますが、そうではありません。すべてのプロジェクト内で、この管理サブフォルダーのアクセス許可を変更したいと思います (同じアクセス許可)。誰かがこれを行う方法についてアイデアを持っていれば、本当に感謝しています。
スコット。
これは、あなたが求めていることを実行する単純な Java アプリケーションです。私が何かを誤解した場合は、おそらく修正できますが、あなたの主な仕事は、特定のファイルのみのアクセス許可を変更する方法を理解することだったと思います.
私の解決策は、現在のディレクトリの fplders (すべてのプロジェクト ファイルを格納するディレクトリ) をループしてから、各プロジェクト フォルダーを介して各管理フォルダーを見つけることでした。次に、icacls コマンドを使用して、特定のユーザーから権限を削除しました。
public static void main(String[] args) {
File file = new File("directory path");
Runtime runtime = Runtime.getRuntime();
for(File pfolder : file.listFiles()) { // Loop through project folders
if(pfolder.isDirectory()) {
for(File mfolder : file.listFiles()) { // Find management folder
if(mfolder.getName().equals("Management")) {
try {
runtime.exec("icacls "+mfolder.getAbsolutePath()+" /deny USERNAME");
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
}
}
}
初期ディレクトリ値 (絶対パスにする) と、削除するパーミッションのユーザー名を必ず変更してください。お役に立てれば!