java - 使用java在linux中列出子目录/文件

标签 java linux filesystems

我试图以普通用户身份在 Linux 上运行此代码,但由于权限不足,listfiles() 返回 null。

File parentDirectory = new File("/root");
File[] childFiles = parentDirectory.listFiles();

如何在不以 SU 模式运行 java 应用程序的情况下运行上述代码。

  • 我可以要求用户输入 root 密码吗?这样我就可以运行 linux 命令而不是 java 函数。

在 java 中我必须有哪些选择才能实现这一点?

最佳答案

您可以使/root/ 目录为世界可读或组可读。在后一种情况下,您还必须将运行该程序的用户添加到适当的组中。

全局可读:

sudo chmod o+r /root

组可读:

sudo chmod g+r /root

关于java - 使用java在linux中列出子目录/文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13125351/

相关文章:

java - 如何在java中模拟一个不返回任何内容的函数

linux - 文件名末尾的 "~"字符表示什么(linux)

python - 启动时出现 Django runserver 错误

c++ - 在 Ubuntu Eee 上编译内核需要什么?

filesystems -/dev/ttyS0 无法在 Qemu 中打开

java - 在 Hibernate 中使用 native SQL 查询将结果集放入 DTO

java - Spring MVC : form : radiobutton for Boolean property

java - 如何使用 REST Web 服务器维护登录状态?

file - 如何在 Play Framework 中从服务器读取文件

c# - 如何检查给定的字符串在 Windows 下是否是合法/有效的文件名?