Java修改Linux系统的文件权限
发布日期:2022-05-29 19:04:28 浏览次数:2 分类:技术文章

本文共 1220 字,大约阅读时间需要 4 分钟。

文章目录

之所以写这篇文章是因为,最一开始是直接用输出流生成文件,然后用Runtime.getRuntime().exec("chmod 777 " + xml);将文件授权,因为文件要通过ftp获取,所以用这种方式一开始一直获取不到,然后用命令获取生成的文件是可以的,经检查,生成文件后,虽然执行修改文件权限的代码,但是文件的权限没有及时生效,过了几十秒才会生效,所以当拉取时不会拉取到,所以有了下面的方案,先生成文件,使用下面的方式修改文件的权限,然后再在文件中添加内容,文件获取不到的问题解决

Document doc = new Document(aid);Format format = Format.getCompactFormat();format.setEncoding("UTF-8");format.setIndent(" ");String name = programCode;out = new XMLOutputter(format);String xmlPath = ; // 文件路径File file = new File(xmlPath);file.createNewFile();file.setReadable(true);// 下面的是设置权限的重点Path path = Paths.get(xmlPath);Set perms = Files.readAttributes(path, PosixFileAttributes.class).permissions();perms.add(PosixFilePermission.OWNER_WRITE);perms.add(PosixFilePermission.OWNER_READ);perms.add(PosixFilePermission.OWNER_EXECUTE);perms.add(PosixFilePermission.GROUP_WRITE);perms.add(PosixFilePermission.GROUP_READ);perms.add(PosixFilePermission.GROUP_EXECUTE);perms.add(PosixFilePermission.OTHERS_WRITE);perms.add(PosixFilePermission.OTHERS_READ);perms.add(PosixFilePermission.OTHERS_EXECUTE);Files.setPosixFilePermissions(path, perms);FileOutputStream fileOutputStream = new FileOutputStream(file,true);out.output(doc, fileOutputStream);fileOutputStream.close();

转载地址:https://blog.csdn.net/weixin_43790613/article/details/124772902 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:java修改注册表
下一篇:java保留两位小数,两个0变成了一个0

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月05日 14时36分30秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

Vue生命周期---vue工作笔记0013 2019-04-26
ES6-ES11新特性_ECMAScript_简单介绍---JavaScript_ECMAScript工作笔记001 2019-04-26
ES6-ES11新特性_ECMAScript相关名词介绍_---JavaScript_ECMAScript工作笔记002 2019-04-26
ES6新特性_let变量声明以及声明特性---JavaScript_ECMAScript_ES6-ES11新特性工作笔记003 2019-04-26
Sharding-Sphere,Sharding-JDBC_介绍_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记001 2019-04-26
Sharding-Sphere,Sharding-JDBC_分库分表介绍_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记002 2019-04-26
C++_类和对象_对象特性_构造函数的分类以及调用---C++语言工作笔记041 2019-04-26
C++_类和对象_对象特性_拷贝构造函数调用时机---C++语言工作笔记042 2019-04-26
C++_类和对象_对象特性_构造函数调用规则---C++语言工作笔记043 2021-06-29
C++_类和对象_对象特性_深拷贝与浅拷贝---C++语言工作笔记044 2021-06-29
AndroidStudio_java.util.ConcurrentModificationException---Android原生开发工作笔记237 2021-06-29
AndroidStudio_android中实现对properties文件的读写操作_不把properties文件放在assets文件夹中_支持读写---Android原生开发工作笔记238 2021-06-29
弹框没反应使用Looper解决_the caller should invoke Looper.prepare() and Looper.loop()---Android原生开发工作笔记239 2021-06-29
Command line is too long. Shorten command line for Application---微服务升级_SpringCloud Alibaba工作笔记0067 2021-06-29
AndroidStudio_android实现双击_3击_监听实现---Android原生开发工作笔记240 2021-06-29
C++_类和对象_对象特性_初始化列表---C++语言工作笔记045 2019-04-26
AndroidStudio安卓原生开发_UI高级_DrawerLayout_侧滑菜单控件---Android原生开发工作笔记120 2019-04-26
AndroidStudio安卓原生开发_UI高级_Shape的使用_虚线_直线_矩形_渐变_径向渐变_线性渐变_扫描渐变---Android原生开发工作笔记122 2019-04-26
AndroidStudio安卓原生开发_UI高级_StateListDrawable状态选择器_按钮按下和抬起显示不同颜色---Android原生开发工作笔记124 2019-04-26
kivy制作安卓APP--简单音乐播放器 2019-04-26