2 个版本

新增 0.4.1 2024 年 8 月 2 日
0.4.0 2023 年 9 月 7 日

#257 in Unix APIs

Download history 21/week @ 2024-04-16 3/week @ 2024-07-02 295/week @ 2024-07-09 334/week @ 2024-07-16 265/week @ 2024-07-23 429/week @ 2024-07-30

1,326 个月下载量

MIT 许可证

16KB
268 行代码(不包括注释)

utwt

Crates.io Docs

一个用于解析 utmp 文件(如 /var/run/utmp/var/log/wtmp)的 Rust crate。

注意:该项目自 2023 年 9 月以来已从 utmp-rs 分叉,但已有很多变化。

用法

最简单的方法是使用 parse_from_* 函数,它成功时返回一个 Vec<UtmpEntry>

let entries = utwt::parse_utmp()?;
// or specify a path explicitly
let entries = utwt::parse_from_path("/var/run/utmp")?;
//

如果你不需要收集它们所有,可以使用 UtmpParser 作为迭代器

use utwt::UtmpParser;
for entry in UtmpParser::from_path("/var/run/utmp")? {
    let entry = entry?;
    // ...
}

所有 parse_from_* 函数以及 UtmpParser 基于目标平台的本地格式解析 utmp 文件。如果需要跨平台解析,可以使用 Utmp32ParserUtmp64Parser 代替 UtmpParser

依赖关系

~0.9–1.5MB
~28K SLoC