#mongo-db #file #tags #yaml #maid #indexing #applications

应用 maid-sweeprs

调用管家为旧文件贴标签并将它们扫到地毯下

8 个不稳定版本 (3 个破坏性更新)

0.5.1 2023 年 5 月 12 日
0.5.0 2023 年 5 月 12 日
0.4.1 2023 年 5 月 11 日
0.3.2 2023 年 5 月 9 日
0.2.0 2023 年 5 月 8 日

#1914命令行工具

每月下载量 34 次

MIT 许可证

40KB
949

管家扫帚

如果你有很多未整理的文件,并且不想拆分代码项目和应用程序等目录,这个管家工具就是为你准备的。

这是 maid-sweeper 的 Rust 版本,一个用于分类文件和目录的服务。

如果需要,管家可以在获得许可的情况下练习Danshari。例如,她可以 出售你未使用的iPad以换取金钱

像《蓝档案》中的Toki一样,她是一个具有两种模式的管家

在线:为文件/目录贴标签并将它们保存在mongodb数据库中。在分发这些文件时,也可以从数据库中读取条目。如果你想要多次清扫同一目录或保留文件统计信息,这非常有用。

离线:为文件/目录贴标签并立即分发它们。如果你只想清扫一次目录,这非常有用。

  • 代码项目和应用程序目录被标记,其子目录不进行扫描
    • 如果有DLL,你知道它的用途,管家也知道。
  • 其他文件根据扩展名或名称(如果名称表明它是特殊类型的文件)进行标记。

功能

  • 使用 Tokio 进行异步处理。 Toki,呜呼😭😭😭
  • 如果你想要快速索引,可以使用 MongoDB
  • 通过不扫描代码和程序目录中的每个文件以及不检查元数据来节省时间
  • 使用 yaml 配置规则和标签
  • 恐怖!

安装

  1. 运行 cargo install maid-sweeprs
  2. maidsweep.yaml 复制到 ~/.maidsweep.yaml。或者任何你喜欢的地方,在这种情况下,你需要使用 -c 选项指定路径。
  • 随意修改规则
  1. 安装 MongoDB 并启动服务(可选)。

使用方法

maid[--use-mongodb] [--mongodb-host<MONGODB_URL>] [-c<CONFIG_PATH>] [-文本<标签>] 路径 操作

  • --use-mongodb 使用mongodb条目进行清理。
  • --mongodb-host 指定mongodb URL,默认为 mongodb://localhost:27017
  • -c 指定配置文件路径,默认为 ~/.maidsweep.yaml
  • -t 指定带有哪些标签的文件进行清理,默认为任何标签。

操作 = [-x参数] | [--cp<目标位置>] | [--mv<目标位置>] | [--保存]

  • -x 类似于find中的--execfd中的-x,它执行一个命令。
  • --cp--mv 将文件复制或移动到 <destination>/<文件的第一个标签>/
  • --save 将条目保存到数据库,然后您可以指定 --use-mongodb 从数据库中读取条目进行清理。

使用MongoDB

  1. 启动MongoDB服务。
  2. 调用 maid --mongodb-host <MONGODB_URL> ~/Videos/Study --save,然后您可以在数据库中找到标记条目。清理工作会在所有标记的目录上进行。
  3. 调用 maid --use-mongodb --mongodb-host <MONGODB_URL> -t video game --mv classified,maid 将将所有标记为 'video' 或 'game' 的文件和目录移动到 classified/video 和 `classified`。

不使用MongoDB

调用 maid ~/Videos/Study -x --cp Tagged,maid 将所有标记的文件和目录复制到 Tagged 目录,进行分类。

想法

  • 多线程
  • 基于时间的标签
    • 它如何影响其他标签?如果不影响,为什么麻烦?
    • 也许不是标签,而是元数据
    • 将会产生IO开销
  • 按类似名称的文件分组:01.jpg、02.jpg等。
  • 理解人类语言,以便它们可以丢弃垃圾
  • 可选地在清理后清理数据库。

依赖项

~28–41MB
~750K SLoC