使用Java在Linux上查找给定文件的根目录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Java在Linux上查找给定文件的根目录相关的知识,希望对你有一定的参考价值。

我正在尝试根据specifications.freedesktop.org/trash-spec在Linux上实现垃圾支持。它指出

它也可以选择在部分或全部已安装资源的“顶级目录”中提供垃圾。这种捣乱以两种方式完成,如下所述(1)和(2)。

(1)管理员可以创建$ topdir / .Trash目录。此目录的权限应允许所有可以删除文件的用户在其中写入。如果文件系统支持,则必须设置权限中的“粘滞位”。

从非主分区/ device4中删除文件时,实现(如果它支持在顶级目录中删除)必须检查是否存在$ topdir / .Trash。

如果我理解正确,我将需要找到$topdir,根据我的理解,它是挂载的文件系统/分区的根。

运用

FileStore store = FileSystems.getDefault().getFileStores();

我可以得到所有似乎是挂载点的FileStore,但是我没有看到一个可靠的方法来获得FilePath或String的挂载点。

如何找到(普通)Java的挂载点?

答案

从您提供的链接,这是$topdir的确切描述

顶级目录,$ topdir - 安装文件系统的目录。 “/”是根文件系统的顶级目录,但不是其他已安装文件系统的目录。例如,可以在“/ home”,“/ media / flash”等上安装单独的文件系统。在本文中,名称“$ topdir”用于“任何顶级目录”。

这个question的答案提出了获取装载信息的方法,尽管我认为它是相当迂回的。希望这可以帮助!

以上是关于使用Java在Linux上查找给定文件的根目录的主要内容,如果未能解决你的问题,请参考以下文章

怎么查找linux上jdk安装目录

如何在 Linux 上的 C 中查找目录及其子目录中的文件?

linux下目录与文件的查找

Linux下find命令和grep命令查找文件

Linux学习总结(十五)文件查找 which whereis locate find

linux命令行怎么查看指定文件在哪