Общий ответ здесь заключается в том, что для обработки вывода time
в общем случае вы должны иметь такую конструкцию, как
(time command 1>/dev/null) 2>&1 | ...
, которая умножает команду на подоболочку и скрывает ее вывод, а затем захватываетвывод времени (который находится на stderr, он же дескриптор 2) и перенаправляет его на стандартный вывод, затем направляет стандартный вывод в канал.После этого возможна дальнейшая обработка.
Как отметил Деннис Уильямсон, TIMEFMT zsh можно использовать для настройки вывода.Это хорошо, потому что это означает, что вам, вероятно, не нужно создавать конвейер для переформатирования вывода времени при использовании zsh, но вам все равно придется выполнить перенаправление stderr для захвата вывода.