Я изо всех сил пытаюсь разобрать вывод команды времени в bash - и даже не останавливать ее при распечатке своего вывода, когда я его вызываю. Это мой тестовый код:
#!/bin/bash
TIME=`time ls -lh > /dev/null`
echo "Testing..."
echo $TIME
В настоящее время выдает:
{blank-line}
real 0m0.064s
user 0m0.002s
sys 0m0.005s
Testing
{blank-line}
Итак, кажется, что значение, назначенное $TIME
, является пустой строкой в начале распечатки времени. Мне нужно получить значение секунд sys линии, то есть "0.005". Я уверен, что у меня будут только секунды, поэтому мне ничего не нужно до "м", однако секундная часть может быть в виде xx.xxx, если она идет >= 10 секунд. В настоящее время я понятия не имею, как подавить вывод "времени", захватить все это вместо пустой строки и не анализировать, чтобы получить нужные значения.
Любая помощь будет высоко оценена...