## 关于

一个极其简易的 cli 工具,批量清理指定目录及其子目录的构建产物,目前支持 go,maven,gradle,cargo 的构建产物清除

## 使用

安装

```shell
cargo install rs_clean
```

使用

```console
$ rs_clean  folder/
```

## 项目地址
[rs_clean]( https://github.com/pwh-pwh/rs_clean)
举报· 84 次点击
登录 注册 站外分享
4 条回复  
idealhs 小成 2024-8-23 09:08:05
你是否在寻找 git clean -fdx
AoEiuV020JP 小成 2024-8-23 11:21:32
比起清理,我更在意怎么把构建缓存集中到一个目录里,
我常用的 gradle 调整配置可以把 build 集中起来放在根目录方便删除, 但还剩个 buildSrc/.gradle 不知道咋改,

话说你这工具对我这种修改过 build 目录的情况应该就不适用了吧,
PTLin 小成 2024-8-23 18:32:16
以前因为 cargo 构建项目太大也写了一个简单的,后来想改成多线程支持不同项目的,写一写就放弃了,没想到 op 做到了
```rust
fn walk(p: impl AsRef<Path>) -> anyhow::Result<()> {
    let save = std::env::current_dir()?;
    std::env::set_current_dir(&p)?;
    for entry in std::fs::read_dir(".")? {
        let entry = entry?;
        let path = entry.path();
        let file_name = path.file_name().unwrap().to_str().unwrap();
        if file_name.contains("Cargo.toml") {
            println!("{}", p.as_ref().display());
            std::process::Command::new("cargo.exe")
                .arg("clean")
                .spawn()
                .unwrap();
            break;
        }
        if path.is_dir() {
            walk(&path)?;
        }
    }
    std::env::set_current_dir(save)?;
    Ok(())
}
```
yb2313 小成 2024-8-27 16:27:26
不是有了吗 https://github.com/tbillington/kondo
返回顶部