Почему команда time в linux имеет другой вывод при вводе в оболочку, чем в сценарии? - PullRequest
3 голосов
/ 10 января 2010

Проблема в том, что когда я использую время в оболочке, я получаю вывод:

1.350u 0.038s 0:01.45 95.1%     0+0k 0+72io 1pf+0w

И когда я использую его в сценарии, я получаю:

real    0m1.253s
user    0m1.143s
sys     0m0.047s

Я имею в виду, почему? А в shell-скрипте в начале пишу:

#!/bin/bash

1 Ответ

5 голосов
/ 10 января 2010

Bash имеет встроенную команду time, и ваша система также должна иметь отдельный двоичный файл на /usr/bin/time:

$ 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,
    ...
$ which time
/usr/bin/time

Две команды дают разные выходные данные:

$ time echo hi
hi

real    0m0.000s
user    0m0.000s
sys 0m0.000s
$ /usr/bin/time echo hi
hi
0.00user 0.00system 0:00.00elapsed 100%CPU (0avgtext+0avgdata 0maxresident)k
0inputs+0outputs (0major+199minor)pagefaults 0swaps
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...