如何使用 java 授予文件和文件夹 700 和 770 权限
How to give permission 700 and 770 to file & folder using java
我想使用 java 为文件授予 chmod 700 权限。
我使用的代码
Set<PosixFilePermission> perms = new HashSet<PosixFilePermission>();
perms.add(PosixFilePermission.OWNER_READ);
perms.add(PosixFilePermission.OWNER_WRITE);
perms.add(PosixFilePermission.OWNER_EXECUTE);
//add group permissions
perms.add(PosixFilePermission.GROUP_READ);
perms.add(PosixFilePermission.GROUP_WRITE);
perms.add(PosixFilePermission.GROUP_EXECUTE);
Path FilePathObject = Paths.get(fileDir.toString(),"fileRun.sh");
Files.setPosixFilePermissions(FilePathObject, perms);
但是没有正确设置权限-
drwxrwsr-x 4 user group 94 Aug 12 05:45 scriptconfig
我也试过这段代码来设置 700 权限 -
txtFilePath.toFile().setExecutable(false,true);
txtFilePath.toFile().setReadable(false, true);
txtFilePath.toFile().setWritable(false,true);
但这也不符合预期。我们有什么可以设置这些权限的东西吗?
试试
txtFilePath.toFile().setExecutable(true);
txtFilePath.toFile().setReadable(true);
txtFilePath.toFile().setWritable(true);
否则你可以在下面查看
How do i programmatically change file permissions?
如果您想授予文件 770 权限,此代码将有效 -
Set<PosixFilePermission> perms = new HashSet<PosixFilePermission>();
perms.add(PosixFilePermission.OWNER_READ);
perms.add(PosixFilePermission.OWNER_WRITE);
perms.add(PosixFilePermission.OWNER_EXECUTE);
//add group permissions
perms.add(PosixFilePermission.GROUP_READ);
perms.add(PosixFilePermission.GROUP_WRITE);
perms.add(PosixFilePermission.GROUP_EXECUTE);
Path FilePathObject = Paths.get(fileDir.toString(),"fileRun.sh");
Files.setPosixFilePermissions(FilePathObject, perms);
Note : You have to create the directory before executing given
command then only it will work otherwise directory will be created
with default permissions.
先创建目录然后就可以使用
PosixFilePermission API introduced in Java 1.7.
`
我想使用 java 为文件授予 chmod 700 权限。
我使用的代码
Set<PosixFilePermission> perms = new HashSet<PosixFilePermission>();
perms.add(PosixFilePermission.OWNER_READ);
perms.add(PosixFilePermission.OWNER_WRITE);
perms.add(PosixFilePermission.OWNER_EXECUTE);
//add group permissions
perms.add(PosixFilePermission.GROUP_READ);
perms.add(PosixFilePermission.GROUP_WRITE);
perms.add(PosixFilePermission.GROUP_EXECUTE);
Path FilePathObject = Paths.get(fileDir.toString(),"fileRun.sh");
Files.setPosixFilePermissions(FilePathObject, perms);
但是没有正确设置权限-
drwxrwsr-x 4 user group 94 Aug 12 05:45 scriptconfig
我也试过这段代码来设置 700 权限 -
txtFilePath.toFile().setExecutable(false,true);
txtFilePath.toFile().setReadable(false, true);
txtFilePath.toFile().setWritable(false,true);
但这也不符合预期。我们有什么可以设置这些权限的东西吗?
试试
txtFilePath.toFile().setExecutable(true);
txtFilePath.toFile().setReadable(true);
txtFilePath.toFile().setWritable(true);
否则你可以在下面查看
How do i programmatically change file permissions?
如果您想授予文件 770 权限,此代码将有效 -
Set<PosixFilePermission> perms = new HashSet<PosixFilePermission>();
perms.add(PosixFilePermission.OWNER_READ);
perms.add(PosixFilePermission.OWNER_WRITE);
perms.add(PosixFilePermission.OWNER_EXECUTE);
//add group permissions
perms.add(PosixFilePermission.GROUP_READ);
perms.add(PosixFilePermission.GROUP_WRITE);
perms.add(PosixFilePermission.GROUP_EXECUTE);
Path FilePathObject = Paths.get(fileDir.toString(),"fileRun.sh");
Files.setPosixFilePermissions(FilePathObject, perms);
Note : You have to create the directory before executing given command then only it will work otherwise directory will be created with default permissions.
先创建目录然后就可以使用
PosixFilePermission API introduced in Java 1.7.
`