#file #inode #read-file #index #system #unique-id

bin+lib file-id

Utility for reading inode numbers (Linux, MacOS) and file IDs (Windows)

4 releases

0.2.2 Oct 25, 2024
0.2.1 Aug 21, 2023
0.2.0 Aug 20, 2023
0.1.0 May 17, 2023

#319 in Filesystem

Download history 41958/week @ 2024-10-29 49109/week @ 2024-11-05 52374/week @ 2024-11-12 42749/week @ 2024-11-19 30702/week @ 2024-11-26 42465/week @ 2024-12-03 39378/week @ 2024-12-10 56651/week @ 2024-12-17 17269/week @ 2024-12-24 27781/week @ 2024-12-31 48054/week @ 2025-01-07 52495/week @ 2025-01-14 51295/week @ 2025-01-21 54445/week @ 2025-01-28 65944/week @ 2025-02-04 57370/week @ 2025-02-11

235,358 downloads per month
Used in 162 crates (4 directly)

MIT/Apache

13KB
171 lines

File Id

» Docs

A utility to read file IDs.

Modern file systems assign a unique ID to each file. On Linux and MacOS it is called an inode number, on Windows it is called file index. Together with the device id, a file can be identified uniquely on a device at a given time.

Keep in mind though, that IDs may be re-used at some point.

Example

let file_id = file_id::get_file_id(path).unwrap();

println!("{file_id:?}");

Features

  • serde for serde support, off by default

lib.rs:

Utility for reading inode numbers (Linux, macOS) and file ids (Windows) that uniquely identify a file on a single computer.

Modern file systems assign a unique ID to each file. On Linux and macOS it is called an inode number, on Windows it is called a file id or file index. Together with the device id (Linux, macOS) or the volume serial number (Windows), a file or directory can be uniquely identified on a single computer at a given time.

Keep in mind though, that IDs may be re-used at some point.

Example

let file = tempfile::NamedTempFile::new().unwrap();

let file_id = file_id::get_file_id(file.path()).unwrap();
println!("{file_id:?}");

Example (Windows Only)

let file = tempfile::NamedTempFile::new().unwrap();

let file_id = file_id::get_low_res_file_id(file.path()).unwrap();
println!("{file_id:?}");

let file_id = file_id::get_high_res_file_id(file.path()).unwrap();
println!("{file_id:?}");

Dependencies

~0–8.5MB
~67K SLoC

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy