Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/upsuper/utmp-rs

Rust crate to parse utmp file
https://github.com/upsuper/utmp-rs

rust-crate utmp

Last synced: about 5 hours ago
JSON representation

Rust crate to parse utmp file

Awesome Lists containing this project

README

        

# utmp-rs

[![Crates.io](https://img.shields.io/crates/v/utmp-rs.svg)](https://crates.io/crates/utmp-rs)
[![Docs](https://docs.rs/utmp-rs/badge.svg)](https://docs.rs/utmp-rs)

A Rust crate for parsing `utmp` files like `/var/run/utmp` and `/var/log/wtmp`.

## Usage

Simplest way is to use `parse_from_*` functions,
which returns a `Vec` on success:
```rust
let entries = utmp_rs::parse_from_path("/var/run/utmp")?;
// ...
```

If you don't need to collect them all,
`UtmpParser` can be used as an iterator:
```rust
use utmp_rs::UtmpParser;
for entry in UtmpParser::from_path("/var/run/utmp")? {
let entry = entry?;
// ...
}
```

All the `parse_from_*` functions as well as `UtmpParser` parse `utmp` file
based on the native format for the target platform.
If cross-platform parsing is needed,
`Utmp32Parser` or `Utmp64Parser` can be used instead of `UtmpParser`.