Accept units (k, m, g) for --chunk-size. Add option -k/--keep-going to continue in case of IO errors such as permission denied. Add option -e/--errexit to immediately exit >0 on the first denied difference. Add option to scan ahead and show progress on standard error. Hash and check symlinks targets? https://doc.rust-lang.org/std/fs/fn.read_link.html https://unix.stackexchange.com/questions/63876/changing-the-timestamp-of-a-symlink Estimate default number of worker threads based on disk read speed and CPU speed. Test effect of stdout buffering and/or locking on performance with high verbosity. https://rust-cli.github.io/book/tutorial/output.html#a-note-on-printing-performance Generate a man page. https://rust-cli.github.io/book/in-depth/docs.html https://lib.rs/crates/clap_mangen Use common exit codes. https://man.openbsd.org/sysexits https://github.com/dtolnay/anyhow/issues/247