【发布时间】:2014-10-30 08:34:50
【问题描述】:
有没有办法在不使用 NIO 的情况下递归地设置路径上的 777 权限(以便路径上的所有目录都获得 777 权限)。
我们可以通过如下文件类中的方法对给定文件的最后一个叶子执行此操作
import java.io.File;
import java.nio.file.FileSystems;
public class permissionTest {
public static void main(String [] args){
String dir = "./leaf1/leaf2/leaf3";
File baseDir = new File(dir);
boolean success = baseDir.mkdirs();
if (success) {
System.out.println("Created dirs");
baseDir.setExecutable(true, false);
baseDir.setReadable(true, false);
baseDir.setWritable(true, false);
}
else{
System.out.println("Not created");
}
}
}
上面给出了 777 给 leaf3 ,如何也给 777 给 leaf1 & leaf2 ?在一个命令中?
【问题讨论】:
-
你不想使用多个命令设置权限的原因是什么?
-
应该有更好的方法,比如 chmod -R:) ,对于深度嵌套的路径也不好
-
您想将 777 分配给当前和前两个父级?通常情况相反,将 777 应用于父目录及其所有子目录
-
如果我在上面的例子中给leaf1 777,leaf2 和leaf3 不会得到它
-
为什么人为限制不使用NIO?
标签: java permissions 777