Я пытаюсь применить временные метки на стандартный вывод процесса.  Для надлежащих временных меток , которые будут применяться, я пытаюсь unbuffer стандартного вывода процесса.  Это работает с unbuffer но не с stdbuf как я ожидал.  Рассмотрим следующий скрипт медленной печати « slowprint »:
#!/bin/bash
if [ $# -ne 2 ]; then
   echo "usage: ${0%%/*} <file> <delay in microseconds>"
   exit 1
fi
DELAY=$2 perl -pe 'BEGIN{use Time::HiRes qw(usleep)} { usleep($ENV{DELAY}) }' $
Теперь сравните следующие попытки применить метки времени:
stdbuf -oL ./slowprint <(ls) 100000 | 
awk '{ print strftime("%H:%M:%S"), $0; fflush(); }'
против
unbuffer ./slowprint <(ls) 100000 | 
awk '{ print strftime("%H:%M:%S"), $0; fflush(); }' 
Второй работает для меня, а первый нет, хотя я ожидаю, что они сделают то же самое.  В настоящее время unbuffer не подходит, потому что он глотает коды ошибок при определенных обстоятельствах (я написал отдельный вопрос об этом поведении).
