Skip to content

A small program that recursively checksums files in a given directory. Can work with any algorithm provided by Java. Compiled in a format used by the GNU Coreutils checksum digests for checking.

License

Notifications You must be signed in to change notification settings

UFFR/PathChecksum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PathChecksum

A small program that recursively checksums files in a given directory. Can work with any algorithm provided by Java. Compiled in a format used by the GNU Coreutils checksum digests for checking.

A progress bar is shown for every file, so big files don't look as if the program hung.

Use -h or --help to see basic usage and -V or --version to check the version.

Algorithm List

List was generated by my computer, but the major entries should be in whatever JRE you have too.

  • MD2
  • MD5
  • SHA
  • SHA-224
  • SHA-256
  • SHA3-256
  • SHA3-384
  • SHA3-512
  • SHA-384
  • SHA-512
  • SHA-512/224
  • SHA-512/256

Examples

Calculating checksums for all files within the Documents directory and subdirectories and outputting the list to the Checksums folder with verbose console printing and using the SHA-1 algorithm: java -jar path_checksum.jar -p ~/Documents -a sha1 -e ~/Checksums -v

Checking the saved list against the current files: java -jar path_checksum.jar -p ~/Checksums/Documents.sha1 -a sha1

Can also work on big files: java -jar path_checksum.jar -p ~/Downloads/archive.7z -a sha-512 -v -e ~/Downloads/archive.7z.sum

Known Bugs

Report any found bugs to this repo.

  • ProgressBar/ProgressBarBuilder has trouble properly displaying sizes larger than 2047 MB (just shy of 2 GB), so it just displays either that or 1 GB. Appears to be an issue with using the ProgressBar.wrap(InputStream, ProgressBarBuilder) factory, may have to take it with them. (Fixed by updating version to 0.9.5)

Planned Features

  • Option to use purely ASCII progress bars, in case the user's terminal doesn't support ANSI.
  • Option to disable progress bars altogether, where undesired or don't work properly.
  • An --exclude parameter to exclude certain files or directories so the user doesn't have to do more manual work.

Libraries Used

About

A small program that recursively checksums files in a given directory. Can work with any algorithm provided by Java. Compiled in a format used by the GNU Coreutils checksum digests for checking.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages