Tests and creates simple file verification (sfv) listings
cksfv [-bciqrL] [-C dir] [-f file] [-g path] [file ...]
cksfv is a tool for verifying CRC32 checksums of files. CRC32 checksums are used to verify that files are not corrupted. The algorithm is cryptographically crippled so it can not be used for security purposes. md5sum (1) or sha1sum (1) are much better tools for checksuming files. cksfv should only be used for compatibility with other systems.
cksfv has two operation modes: checksum creation and checksum verification
In checksumcreationmode cksfv outputs CRC32 checksums of files to to stdout, normally redirected to an .sfv file.
In checksumverificationmode cksfv reads filenames from an sfv file, and compares the recorded checksum values against recomputed checksums of files.
These options are available
Strip dirnames from filenames that are checksumed. loads the files from original positions, but prints only basenames to catalogue in sfv file.
Use stdout for printing progress and final resolution (files OK or some errors detected). This is useful for external programs analysing output of cksfv. This also forces fflushes on the output when needed.
Change current directory before proceeding with a verification operation. This option is mostly obsoleted with -g option. Earlier this was used to verify checksums in a different directory: cksfv -C foo -f foo/bar.sfv
Verify checksums in the sfv file
Change current directory to the path name of the file and verify checksums in the sfv.
Ignore case in filenames. This is used in the checksum verification mode.
Follow symlinks when recursing subdirectories. This option is used with the -r option.
Enable QUIET mode (instead of verbose mode), only error messages are printed
Enable VERBOSE mode, this is the default mode
recurse directories and check the .sfv files in each. Symlinks are not followed by default. This option cannot be used with -f and -g options.
Verify checksums of files listed in 'foo/files.sfv': cksfv -g foo/files.sfv Create checksums for a set of files: cksfv *.gz > files.sfv Verify checksums of case-insensitive filenames listed in 'files.sfv'. This is sometimes useful with files created by operating systems that have case-insensitive filesystem names. cksfv -i -g files.sfv Check checksums of files 'foo' and 'bar' listed in 'files.sfv': cksfv -g files.sfv foo bar Create checksums of files matching /foo/bar/* and strip dirnames away: cksfv -b /foo/bar/* > files.sfv Recursively scan /foo/bar and verify each .sfv file: cksfv -C /foo/bar -r Same as previous, but starting from the current working directory and also following symlinks during recursion: cksfv -r -L