1extern crate io_block;
2use io_block::os::BlockDev;
3use io_block::BlockSize;
4
5fn show_blk<T: AsRef<::std::path::Path>>(p: T) -> Result<(), ::std::io::Error> {
6 let f = std::fs::File::open(p.as_ref())?;
7 let b = BlockDev::from_file(f)?;
8 println!(
9 "{:?}: block-size-logical: {:?}",
10 p.as_ref(),
11 b.block_size_logical()
12 );
13 println!("{:?}: block-count: {:?}", p.as_ref(), b.block_count());
14 println!(
15 "{:?}: block-size-physical: {:?}",
16 p.as_ref(),
17 b.block_size_physical()
18 );
19 Ok(())
20}
21
22fn main() {
23 for arg in std::env::args_os().skip(1) {
24 match show_blk(arg) {
25 Err(e) => println!("Error: {:?}", e),
26 _ => {}
27 }
28 }
29}