Создать md5sum файла параллельно дампу файла

Моя программа на C создает выходной файл out.txt.

Я должен создать md5sum из этого.

Я знаю, что команда md5sum out.txt > md5sum.txt,

То, что я хочу, это не создавать весь out.txt, а затем md5sum out.txt,

Я хочу, чтобы обе операции выполнялись параллельно. Md5sum должен быть создан, пока файл сбрасывается. Чтобы я мог сэкономить время.

Что-то вроде,

./program > out.txt &
md5sum out.txt > md5sum.txt &
wait

Есть ли правильный способ сделать это? Пожалуйста помоги.

2 ответа

Решение

./program | md5sum > md5sum.txt

Это должно работать для вас:).

Когда вы пишете A | B, оба процесса уже работают параллельно.

Если вам нужна только контрольная сумма файла, вы можете использовать конвейер.
как./program | md5sum> md5sum.txt
Но таким образом вы потеряете выходной файл. Вы можете использовать следующий синтаксис
./program | tee> out.txt | md5sum> md5sum.txt
Это создаст файл out.txt, а также вычислит md5sum, чей вывод идет в md5sum.txt

Другие вопросы по тегам