Я попытался использовать команду time с параметром -f для форматирования вывода времени, но я получаю следующую ошибку:
-f: command not found
Затем я попытался использовать другие параметры -a , -o и т. д., и я получаю ту же ошибку. Даже time --version не работает (--version: command not found).
Не говорите мне, чтобы я читал этого человека, потому что я уже делаю это много раз ... Все эти параметры указаны там. Итак, где может быть проблема?
Поскольку, как объясняют другие ответы, time является ключевым словом оболочки, единственным доступным для вас вариантом является -p:
terdon@oregano ~ $ help time
time: time [-p] pipeline
Report time consumed by pipeline's execution.
Execute PIPELINE and print a summary of the real time, user CPU time,
and system CPU time spent executing PIPELINE when it terminates.
Options:
-p print the timing summary in the portable Posix format
Итак, вам нужно запустить time это в /usr/bin. Вот несколько способов сделать это:
Вместо этого используйте исполняемый файл time:/usr/bin/time -f %Uuser ls >/dev/null
Используйте \, из-за чего ваша оболочка игнорирует псевдонимы, встроенные слова и ключевые слова и вместо этого ищет ваш $PATH для соответствующий исполняемый файл: \time -f %Uuser ls >/dev/null
Используйте встроенный command, который выполняет те же действия, что и выше command time -f %Uuser ls >/dev/null
Используйте другую оболочку, в которой нет такого ключевого слова. Например, sh (на самом деле dash на Ubuntu sh -c "time -f %Uuser ls >/dev/null"
Используйте which, который будет выполнять поиск по вашему $PATH (OK, это глупо) $(which time) -f %Uuser ls >/dev/null
У оболочек bash и zsh есть внутренняя команда time. Вы должны использовать
/usr/bin/time -f ...
BTW, я обнаружил, что используя (из zsh):
~% which time
time: shell reserved word