Я регистрирую вывод команды с помощью
command | tee file
Это приводит к тому, что tee
на самом деле записываются на диск примерно раз в секунду. Я бы хотел уменьшить частоту записи, больше кэшируя вывод.
Я знаю, что это можно сделать на системном уровне для всех процессов, но есть ли простой способ сделать это на уровне пользователя, только для этого процесса?
(Когда tee
записывается на ramdisk
, а затем другой процесс периодически копирует выходные данные; или изменение самого tee
кажется слишком сложным)
Попробуйте
command | stdbuf -o5M cut -b-
для буферизации вывода 5 МБ. Список параметров см. В man stdbuf
. Обратите внимание, что это не работает с тройником
, который отменяет режимы буфера.