Sum is a core Unix utility available on all Unix and Linux distributions. There is a GNU utility written by Kayvan Aghaiepour and David MacKenzie and distributed with the UNIX- and Linux-based operating systems. This utility outputs the checksum of each argument file, as well as the number of blocks they take on disk.
According to the manual page,
sum uses two different algorithms for calculating the checksum and blocks, the SYSV checksum algorithm and the BSD checksum (default) algorithm. Switching between the two algorithms is done via command line options.
The algorithms implemented in this program are less sensitive than more modern checksum methods; the SYSV algorithm does not even depend on the order of the data. The GNU manual page states: "sum is provided for compatibility; the cksum program is preferable in new applications".
sum utility is invoked from the command line according to the following syntax:
sum [OPTION]... [FILE]...
with the possible option parameters being:
- use BSD checksum algorithm, use 1K blocks (defeats -s)
- use SYSV checksum algorithm, use 512 bytes blocks
- display the help screen and exit
- output version information and exit
When no file parameter is given, or when FILE is
-, the standard input is used as input file.