Я загружаю файлы с сайта, который предоставляет контрольные суммы (в виде десятичных знаков), вычисленные с помощью команды Linux cksum
.
В R я могу выполнить контрольную сумму CRC-32 в десятичном формате с помощью:
library(digest)
strtoi(digest(file_path, algo="crc32", file=TRUE), base=16L)
Есть ли похожая команда, которую я могу использовать для получения контрольной суммы для файла, совместимого с командой Linux cksum
? Мне нужен кросс-платформенный подход, который предпочтительно не требует программного обеспечения, внешнего по отношению к R. страница википедии на cksum утверждает, что:
«Стандартная команда cksum, используемая в большинстве UNIX-подобных ОС (включая GNU/Linux, *BSD, Mac OS X и Solaris), использует алгоритм CRC, основанный на стандартной проверке кадра Ethernet, и поэтому может взаимодействовать между реализациями. однако не совместим с расчетом CRC-32».
Я также нашел cksum
в пакете bitops
, но мне непонятно, как лучше вычислить контрольную сумму для файла с помощью этой функции.