如何创建目录的过滤视图?

如何创建目录的过滤视图?

我有一个包含很多文件的文件夹。其中一些比其他更常用和更需要。

我想要有“文件夹”,它代表具有特定过滤器的该目录的视图。文件名“has _final”或文件大小 < 5 mb 等过滤器。

我知道,有find、grep等命令。我希望他们的结果作为带有“硬链接”的文件系统目录。

有什么办法可以做到这一点吗?

答案1

在 Google 中进行简短搜索会产生几个 FUSE 解决方案:

答案2

您说您想要硬链接,但您也说您想要“代表视图的“文件夹””。如果你对某件事感到满意好像你想要什么,考虑 shell 函数:

ls_final() { ls "$@" | grep has_final; }

您目前提出的问题是

文件名“有_final”

我不知道这是否是一个错字

文件名包含“_final”

如果是,请grep相应更改。

文件大小的过滤有点困难,特别是如果选择限制不是 10 的幂(或小整数乘以 10 的幂)。grep如果您始终使用-l(小写 L)选项或等效选项,则可以使用 来管理它。可能还有其他方法,尽管优雅、安全且高效地做到这一点可能非常困难。

长话短说ls_final如果您养成使用、等的习惯ls_small,就会看起来像仅存在所需的文件。

答案3

cd /path/to/filter_directory
find /source/dir -mindepth 1 -maxdepth 1 [...filter tests...] -exec ln -t . {} +

相关内容