如何用Java管理Linux文件权限?

2024-01-09

是否有任何机制来获取和设置文件/目录权限?

比如我想以shell的方式显示一个文件的权限:

-rwxr-xr--

使用 Java 可以做到这一点吗?

  • 我知道里面有一些方法File类来知道文件是否canExecute, canRead and canWrite,但据我所知,此信息仅适用于当前用户。我需要知道整个八进制数,例如 755,所以我需要从用户、组和其他人那里获取它。
  • 我知道 Java7 带来了 Posix 操作,但是如何使用较小的 JRE 来做到这一点?
  • 我不想使用类似的命令ls, or chmod.

如果可以使用外部库,有以下几种:

  • JPosix http://www.kanga.org/jposix/
  • 用于 Java 的 Posix http://bmsi.com/java/posix/
  • jnr-posix https://github.com/jnr/jnr-posix

如果整个库看起来很麻烦,那么创建一个 JNI 包装器来调用lstatC 函数并返回访问模式大约需要 10 分钟。这是创建这样一个的教程包装纸isatty and ttyname功能 http://jonisalonen.com/2012/calling-c-from-java-is-easy/.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何用Java管理Linux文件权限? 的相关文章

  • 使用 Spring Data REST 处理自定义异常 (i18n)

    我正在使用 Spring Boot 1 5 4 和 Spring JPA Spring Data REST HATEOAS 我正在寻找一种最佳实践 Spring 方式 来自定义异常 Spring Data REST 正在管理添加 i18n
  • RSA SignatureException:签名长度不正确

    我在签署 rsa 签名时遇到问题 我有一个用私钥加密的签名 然而 当我尝试使用公钥验证它时遇到问题 我得到以下异常 java security SignatureException Signature length not correct
  • 配置tomat的server.xml文件并自动生成mod_jk.conf

    我在用apache 2 2 15 and tomcat6 6 0 24 on CentOS 6 4并希望使用 tomcat 服务器的功能 通过添加以下内容自动生成 mod jk conf 文件
  • 在 TestNG 中运行多个类

    我正在尝试自动化一个场景 其中我想登录一次应用程序 然后进行操作而无需再次重新登录 考虑一下 我有在特定类的 BeforeSuite 方法中登录应用程序的代码 public class TestNGClass1 public static
  • Java Spring 应用程序存在内存泄漏。系统非堆内存不断增加

    我已使用 yourkit 分析器监视我的 Web 应用程序 保留最大大小的主要对象是 SessionFactoryImpl webappclassloader 和 CGlib 对象显示 spring crone调度程序会导致内存泄漏吗 我尝
  • 哈希码是否用于加速集合中的对象查找?

    IIUC 相同类型的两个不同对象可以存储在 HashSet 中 即使两个对象在以下情况下返回相同的值 hashCode 叫做 例如根据本文 https eclipsesource com blogs 2012 09 04 the 3 thi
  • 是否可以从另一个方法传递 args[] 来调用 main 方法?

    我试图从另一个传递参数的方法调用类的主要方法 就像从命令行运行该类时一样 有没有办法做到这一点 您可以致电main方法就像您调用任何其他 静态 方法一样 MyClass main new String arg1 arg2 arg3 Exam
  • 尝试在java中的Arraylist中查找对象的所有出现

    我有一个 Java ArrayList 我需要查找其中出现的所有特定对象 ArrayList indexOf Object 方法只找到一次出现 所以看来我还需要其他东西 我认为你不需要太花哨 以下应该可以正常工作 static
  • Java 唤醒休眠线程

    我阅读了其他帖子 但没有找到我正在寻找的确切答案 所以我希望有人能给出一些澄清 我有一个将运行一段时间的程序 我有一些在后台运行的线程来执行各种任务 为了简单起见 让我们考虑 3 个线程 ThreadA每 10 秒执行一次任务 其中Thre
  • C修改printf()输出到文件

    有没有办法修改printf为了将字符串输出到文件而不是控制台 我尝试在互联网上查找一些内容 发现了类似的电话dup dup2 and fflush这可能与此有关 EDIT 也许我不清楚 问题是这是C考试问题 问题如下 解释一个通常将字符串输
  • 以编程方式设置 Logback Appender 路径

    我正在尝试以编程方式设置 Logback 附加程序路径 滚动文件附加器 http logback qos ch apidocs ch qos logback core rolling RollingFileAppender html准确地说
  • 从关卡堆栈中获取相对比例的数学

    为这个可怕的标题道歉 我花了 10 分钟试图用一句话来解释这一点 但失败了 虽然提示这个问题的应用程序是用Java Android 编写的 但我认为它非常通用并且适用于任何语言 欢迎使用伪代码 或简单的英语 回复 我不确定是否应该标记所有通
  • 打印 jasper 文件时执行报表 SQL 语句时出错

    我修改了一个旧项目 但无法确定这段代码有什么问题 使用下面的 jrxml它创造 jasper文件 当我打印 jasper 文件时 使用此代码JasperPrint jasperPrint JasperFillManager fillRepo
  • Java:使用 Java.util.concurrent 线程访问读取线程串行端口

    我正在尝试编写一个 Java 串行设备驱动程序并想使用 对我来说是新的 java util concurrent包裹 我有一种发送数据包然后等待 ACK 的方法 我打算有炭 接收在不同的线程中运行 如果接收线程收到 ACK 它应该使用发送数
  • 抽象类或接口。哪种方式是正确的?

    有两种方法可以选择抽象类或接口 微软解决方案和Oracle解决方案 微软 设计指南 请使用抽象 在 Visual Basic 中为 MustInherit 类而不是接口来将协定与实现分离 http msdn microsoft com en
  • 在Java中多次读取System.in会导致IOException?

    我正在尝试创建一个小命令行游戏来强化我在过去几个月中在 Java 中学到的一些东西 我正在尝试创建一个名为 readInput 的方法 它返回一个我可以一次又一次调用的字符串 第一次它工作正常 但第二次它会导致 IO Exception 如
  • JMockit - 初始化问题

    当我使用以下测试时 我收到警告 警告 JMockit 是按需初始化的 这可能会导致某些测试失败 请检查文档以获取更好的初始化方法 这是我的测试实现 package test import static mockit Mockit impor
  • Integer.parseInt 引发的 NumberFormatException

    嘿 我在学校上编码课 但老师没有很好地解释 所以我们必须在网上查找我所做的信息 但我无法找到代码中的错误 你能帮我吗 char end s do System out println Tipo de boleto char boleto c
  • Linux 为一组进程保留一个处理器(动态)

    有没有办法将处理器排除在正常调度之外 也就是说 使用sched setaffinity我可以指示线程应该在哪个处理器上运行 但我正在寻找相反的情况 也就是说 我想从正常调度中排除给定的处理器 以便只有已明确调度的进程才能在那里运行 我还知道
  • Libgdx 和 Google 应用内购买结果

    我遵循了这些指示 https github com libgdx libgdx wiki Interfacing with platform specific code使用 ActionResolver 接口集成 Libgdx 和原生 An

随机推荐

  • 在 iOS 中同时管理文本转语音和语音识别

    我想要我的iOS我正在开发一个应用程序 使用文本转语音功能向用户朗读从服务器接收到的一些信息 并且我还想允许用户通过语音命令停止此类语音 我尝试过 iOS 的语音识别框架 例如OpenEars我发现问题在于它正在监听和检测应用程序本身 说
  • 在 mouseenter 上旋转 div 元素并在 mouseleave 上停止旋转

    我搜索了很多 但我无法理解其实现 我是初学者 所以请帮助我 div style height 100 width 100 background color blue div javascript var x 0 var y function
  • 为什么我的开发团队应该拥有构建服务器?

    我们知道这是好事 但我发现自己向我的雇主证明了这一点 请说明为什么开发团队需要构建服务器 使用构建服务器有多种原因 没有特定的顺序 但我的脑海中浮现出以下内容 您可以简化开发人员的工作流程并减少出错的机会 您的构建服务器可以处理多个步骤 例
  • 仅在使用 jquery 最后一个键后进行 Keyup

    我正在编写一个简单的脚本来提取输入 keyup 事件的数据库信息 我遇到的问题是每次用户按下一个键时总是重复 keyup 事件 如何才能使其仅在按下最后一个键后才起作用 我想我应该在每次按键后使用像 setTimeOut 这样的函数 但我不
  • Java 中的虚拟(派生)属性是什么?

    我应该创建一个派生属性 该属性将具有处理 Mark E Brown 等值的访问器和修改器 我不明白这个词 这对我来说是新的 帮助 public String getFullName return fullName getFirstName
  • 如何增加雷达图 MPAndoid Chart 的大小?

    I want to increase size of MPAndroid Radar Chart I observed that the size increases gradually when i increase size of th
  • 使用mockito“无法解析方法”

    I use org springframework security core Authentication其中有一个方法 Collection
  • 字符串格式正值和负值以及条件颜色格式 XAML

    我正在寻找一种简单的方法来使用以下标准格式化结果 如果为正 则添加加号并将其显示为绿色 如果为负则添加减号并将其显示为红色 我已经完成了一半 我只是不知道获得颜色格式的最简单方法是什么 有没有一种不使用值转换器的方法
  • cpp文件中的C++变量可以定义为特殊符号β吗

    我们可以使用特殊字符在 C C 中定义变量吗 例如 double 如果是 如何实现这一目标 根据CPP标准工作草案 N4713 5 10 标识符 lex name 标识符是任意长的字母和数字序列 标识符中的每个通用字符名应指定一个字符 该字
  • iOS:如何获取安装引用源

    我想了解用户如何使用什么来源 归因 安装应用程序 对于 Android 可以获取引用者的 URL 但我还没有找到针对 iOS 的明显方法 有外部服务 例如 AppsFlyer http support appsflyer com entri
  • 将 QString 转换为 std::string

    我看过其他几篇关于将 QString 转换为 std string 的帖子 它应该很简单 但不知怎的 我收到了一个错误 我的代码使用cmake编译成VS项目 我使用的是VS Express 所以QT库没有问题 而且我编写的GUI除了这部分之
  • ionic-item 颜色和 href 不起作用

    我开始了一个基于侧菜单模板的离子项目 我试图更改侧面菜单中每个元素的背景颜色 我希望每个项目都有不同的颜色 我尝试添加离子颜色类
  • 重塑数据(更快的方法)

    我发现了一张频率表 今天计数 我必须扩展到原始值的数据框架 我能够做到这一点 但想知道是否有更快的方法使用 reshape 包 r data table 原来的表是这样的 i1 i2 i3 i4 m f 1 0 0 0 0 22 29 2
  • 从字符串中删除所有非 utf-8 符号

    我有大量的文件和解析器 我要做的就是去掉所有非 utf 8 符号并将数据放入 mongodb 中 目前我有这样的代码 with open fname r as fp for line in fp line line strip line l
  • Typeorm子查询添加选择

    我是新使用的typeorm这是我第二次感到困惑typeorm 我有以下查询 SELECT t1 a t1 b t2 a SELECT TOP 1 t1 a FROM table1 t1 WHERE t1 b t2 a ORDER BY t1
  • 将 pandas 中的时间序列重新采样为每周间隔

    如何将 pandas 中的时间序列重新采样为每周频率 其中每周从任意一天开始 我看到有一个可选的关键字库 但它只适用于短于一天的时间间隔 你可以通过锚定偏移量 http pandas pydata org pandas docs stabl
  • C++ boost 库 - 写入 ini 文件而不覆盖?

    我正在尝试使用 boost 库的 ini 解析器和属性树编写 ini 文件 该文件是分阶段写入的 我的意思是每个函数都会写入其中的一部分 最后 我只留下最后的输出 而不是写下所有内容 我在编写时使用的示例代码 property tree p
  • selenium.open() 在迭代测试中变得无响应

    我有一组必须使用不同参数执行的测试步骤 我已在 Eclipse TestNG 中编写了此脚本 由 Excel 工作表提供的参数驱动 现在 测试步骤包括设置页面的属性 然后打开另一个页面以确认该属性已设置 所以 实际上 我使用了一个简单的se
  • Spark,如何打印查询?

    我正在使用 pyspark df self sqlContext read option es resource indexes format org elasticsearch spark sql load df df filter df
  • 如何用Java管理Linux文件权限?

    是否有任何机制来获取和设置文件 目录权限 比如我想以shell的方式显示一个文件的权限 rwxr xr 使用 Java 可以做到这一点吗 我知道里面有一些方法File类来知道文件是否canExecute canRead and canWri