time -f "%e[s]" sleep 3 print -f: コマンドが見つかりません

time -f "%e[s]" sleep 3 print -f: コマンドが見つかりません

time次のオプションを指定せずにコマンド実行中の経過時間を測定するために使用する場合:

time sleep 3

正しく機能して印刷されます。

real    0m3,002s
user    0m0,002s
sys     0m0,000s

ただし、-fや-o(-p以外のすべてのオプション)などのオプションを指定すると、奇妙なエラーメッセージが表示されます。

例では:

time -f "%e[s]" sleep 3

印刷

-f: command not found

(Ubuntu 18.04.2でbashを使用)

私は明らかなものを見逃していますか?

答え1

特別なものがありますtime。組み込みシェルとバイナリとして存在します。

  • type time返品:time is a shell keyword
  • type /usr/bin/time返品:/usr/bin/time is /usr/bin/time

それから:

time -f "%e[s]" sleep 3
bash: -f: command not found

real    0m0.003s
user    0m0.003s
sys     0m0.000s

しかし:

/usr/bin/time -f "%e[s]" sleep 3
3.00[s]

関連情報