4 个版本 (2 个破坏性更新)

0.3.0 2024 年 2 月 10 日
0.2.0 2022 年 3 月 10 日
0.1.1 2020 年 4 月 9 日
0.1.0 2020 年 4 月 8 日

#853文件系统

MIT/Apache

60KB
785

Filetools

一个简单的 crate,用于在 Rust 中执行一些小的 Path 操作。

用户可以

  • 创建目录(一次创建单个或多個目录)
  • 检查给定的文件路径是否匹配一个模式
  • 列出路径中的所有文件/目录
    • 这可以仅仅是路径根内部的文件/目录
    • 这也可以包括路径中包含的所有 所有 子目录中的文件/目录
  • 按上述方式列出文件/目录,但根据过滤模式过滤结果
  • 一些用于创建 PathBuf 名称的一般命名函数

未来将添加更多,但这应该足以用于小型的路径操作。

用法

将其添加到您的 Cargo.toml

[dependencies]
filetools = "0.3.0"

然后将其导入到您的项目中

use filetools::{FtFilter, list_nested_files_with_filter};

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    // Get all Lua files in the Neovim directory
    let root_path = "/home/user/.config/nvim";
    let filter = FtFilter::Raw("lua".to_string());
    let lua_files = list_nested_files_with_filter(&root_path, filter).await?;

    // Delete them all, we hate Lua
    for lua_file in lua_files.into_iter() {
        tokio::fs::remove_file(lua_file).await?;
    }

    Ok(())
}

依赖关系

~7–10MB
~162K SLoC