Я wget
собираю огромные файлы (более 100 ГБ), а затем сравниваю сумму md5 с суммой, размещенной в хранилище. Хотите верьте, хотите нет, но md5sum
для запуска файла такого размера требуется нетривиальное время, поэтому я хотел бы получить сумму параллельно с загрузкой.
Какой лучший способ сделать это? Я не вижу wget
возможности рассчитать MD5 во время загрузки (что удивительно), поэтому я думаю, что использование tee
будет способом ?!
Ответы:
На самом деле это может быть возможно:
Однако это предполагает, что у вас есть хеш в файле заранее.
источник
md5sum
(и любой другой общий алгоритм хеширования, такой как семейство SHA) работает в постоянной памяти. Они предназначены для работы на потоках.awk
в конце вы можете удалить `-` a конец автоматически.wget -O - "https://example.org/myFile.jpg" | tee file | md5sum | awk '{print $1}' > md5.txt