GZIP на нескольких ядрах с PV Progress Bar - PullRequest
0 голосов
/ 26 августа 2018

После этого вопроса 2010 года Gzip со всеми ядрами я бы хотел gzip файлы, использующие несколько ядер, и указать индикатор выполнения с помощью инструмента pv.

Как улучшитьэтот код?

CORES=$(grep -c '^processor' /proc/cpuinfo)
find /source -type f -print0 | xargs -0 -n 1 -P $CORES gzip -9

Я хотел бы показать оставшееся время и параллельно показывать бары прогрессии.

Есть ли у вас какие-либо другие лучшие альтернативы на 2018 год?

Спасибо.

Ответы [ 2 ]

0 голосов
/ 26 августа 2018

Использовать GNU Parallel с индикатором выполнения или eta:

find ... -print0 | parallel -0 --progress gzip -9 {}

Или

find ... -print0 | parallel -0 --eta ...

Или

find ... -print0 | parallel -0 --bar ...
0 голосов
/ 26 августа 2018

Вы на самом деле не используете gzip на нескольких ядрах, вы используете несколько gzip.

pv работает на конвейере.Я не верю, что можно запустить его одновременно на нескольких каналах и предоставить сводку всех из них.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...