1 个不稳定版本
使用旧的 Rust 2015
0.4.10 | 2020 年 1 月 4 日 |
---|
#1410 in 文件系统
用于 rustfmt_lib
195KB
4K SLoC
ignore
ignore crate 提供了一个快速的递归目录迭代器,该迭代器尊重各种过滤器,如 globs、文件类型和 .gitignore
文件。此 crate 还提供了对 gitignore 和文件类型匹配器的底层直接访问。
双许可 MIT 或 UNLICENSE。
文档
使用方法
将以下内容添加到您的 Cargo.toml
[dependencies]
ignore = "0.4"
并将其添加到您的 crate 根目录
extern crate ignore;
示例
此示例展示了此 crate 的最基本用法。此代码将递归遍历当前目录,并根据在 .ignore
和 .gitignore
等文件中找到的忽略 globs 自动过滤文件和目录
use ignore::Walk;
for result in Walk::new("./") {
// Each item yielded by the iterator is either a directory entry or an
// error, so either print the path or the error.
match result {
Ok(entry) => println!("{}", entry.path().display()),
Err(err) => println!("ERROR: {}", err),
}
}
示例:高级
默认情况下,递归目录迭代器将忽略隐藏的文件和目录。可以通过使用 WalkBuilder
构建迭代器来禁用此功能
use ignore::WalkBuilder;
for result in WalkBuilder::new("./").hidden(false).build() {
println!("{:?}", result);
}
有关 WalkBuilder
的更多选项,请参阅文档。
依赖项
~4–13MB
~132K SLoC