#windows #utility #remove-dir

bin+lib remove_dir_all_ext

Windows 上的 remove_dir_all 的安全、可靠实现

2 个版本

0.8.4 2024 年 8 月 12 日
0.8.3 2024 年 8 月 12 日

#548文件系统

Download history 239/week @ 2024-08-12

每月 下载 239

MIT/Apache

34KB
431

remove_dir_all_ext

Latest Version Docs License

[!注意] 这是从 remove_dir_all 分支出来的,重命名为 remove_dir_all_ext 以发布到 crates.io

描述

可靠且快速的目录删除函数。

  • remove_dir_all - 在非 Windows 上这是 std::fs::remove_dir_all 的再导出。对于 Windows,实现处理在快速删除目录树时发生的目录锁定。

  • remove_dir_contents - 与 remove_dir_all 类似,但不删除提供的根目录。

  • ensure_empty_dir - 与 remove_dir_contents 类似,但会在不存在时创建目录。

扩展函数

  • remove_dir_containing_current_executable - 与 remove_dir_contents 类似,但会删除包含当前可执行文件的目录,仅留下可执行文件本身。

  • remove_dir_but_not_selfremove_dir_contents 类似,但不删除当前正在运行的可执行文件。

示例

extern crate remove_dir_all;

use remove_dir_all::*;

fn main() {
    remove_dir_all("./temp/").unwrap();
    remove_dir_contents("./cache/").unwrap();
}

最低 Rust 版本

remove_dir_all 的最低 Rust 版本是最新稳定版本,最低版本可以通过补丁版本升级。您可以通过添加 = 到您的版本(例如 =0.6.0)进行固定,或将 Cargo.lock 文件提交到您的项目。

依赖

~2–11MB
~115K SLoC