Можно использовать объем плазмы, чтобы сделать это, например.
pv file | processor_application
Поскольку объем плазмы передает, это - stdin непосредственно к, он - stdout, Вы не должны использовать кошку.
Редактирование Как Ваша программа уже работает, затем находят PID cat
процесс и затем смотрит на содержание
/proc/<PID>/io
который скажет Вам, сколько байтов это записало - wchar.
Абсолютно! Средство просмотра канала делает exactlty это. Просто вставьте его в свой конвейер:
cat myfile | pv | processor_application
Можно оптимизировать далеко cat
в вышеупомянутом примере:
pv myfile | processor_application
Который имеет преимущество обеспечения фактического индикатора хода выполнения, так как объем плазмы может определить размер входа непосредственно. При использовании объема плазмы посреди конвейера необходимо предоставить размер файла сами для получения точного прогресса:
input_process | pv -s 100M -p | processor_application
Проверьте веб-сайт на большее количество опций настроить объем плазмы.
Если процесс уже работает, lsof имеет a size/offset
столбец, который может быть полезен Вам - находит PID процесса кошки, который Вы хотите осмотреть и затем lsof -o -p [PID]
.
Если процесс еще не работает, pv
как предложенные другие хороший вариант (предполагающий, что Ваша система имеет ту утилиту).