Manpages

JMÉNO

time − změří čas vykonání příkazu nebo vypíše využití zdrojů

POUŽITÍ

time [volby] příkaz [argumenty...]

POPIS

Příkaz time spustí zadaný program příkaz s uvedenými argumenty. Když příkaz skončí, time vypíše na standardní chybový vystup zprávu se časovými statistikami o běhu programu. Tyto statistiky se skládají z (i) skutečného uběhnutého času od spuštění do ukončení, (ii) CPU času uživatele (součet hodnot tms_utime a tms_cutime ze struct tms, navrácené voláním times(2)), a (iii) CPU času systému (součet hodnot tms_stime a tms_cstime ze struct tms navrácené voláním times(2)).

Pozn: Některé shelly (např. bash(1)) mají zabudovaný příkaz time, který poskytuje méně funkcí než zde popisovaný program. Pro použití pravého programu může být potřeba uvedení celé cesty (obvykle /usr/bin/time).

VOLBY

−p

Pokud je locale nastaveno na POSIX, použije tradiční přesný formát

"real %f\nuser %f\nsys %f\n"

(s čísly v sekundách) kde počet desetinných míst ve výstupu pro %f není určen, ale dostačuje k vyjádření přesnosti systému (clock tick accuracy) a je nejméně jedno.

NÁVRATOVÁ HODNOTA

Pokud byl příkaz spuštěn, je návratovou hodnotou návratová hodnota příkazu. V opačném případě je to 127, pokud příkaz nebyl nalezen, 126, pokud byl nalezen, ale nemohl být spuštěn a další nenulová hodnota (1−125), pokud se pokazilo něco jiného.

PROSTŘEDÍ

Jsou použity proměnné LANG, LC_ALL, LC_CTYPE, LC_MESSAGES, LC_NUMERIC, NLSPATH, a PATH. Ta poslední slouží k nalezení příkazu. Ostatní slouží k nastavení textu a formátování výstupu.

VERZE GNU

Následuje popis GNU verze 1.7 programu time. Bez ohledu na název utility obsahuje její výstup spoustu užitečných informací, nejen o využitém času, ale i o dalších zdrojích jako pamět, I/O a IPC volání (kde je to možné). Výstup je formátován pomocí formátovacího řetězce, který může být určen volbou −f nebo proměnnou prostředí TIME .

Výchozí hodnota formátovacího řetězce je

%Uuser %Ssystem %Eelapsed %PCPU (%Xtext+%Ddata %Mmax)k
%Iinputs+%Ooutputs (%Fmajor+%Rminor)pagefaults %Wswaps

Pokud je použita volba −p, je použit (přenositelný) výstupní formát:

real %e
user %U
sys %S

Formátovací řetězec
Formát je interpretován způsobem obvyklým z printf. Obyčejné znaky jsou použity přímo, tabulátor, nový řádek a zpětné lomítko jsou escapovány pomocí \t, \n a \\, znak % je reprezentován jako %%, samostatně označuje převod. Program time vždy sám přidá závěrečný konec řádku. The conversions follow. Jsou podporovány všechny, které používá tcsh(1).

Čas

%E

Skutečný uplynulý čas ([hodiny:]minuty:sekundy).

%e

(Není v tcsh.) Skutečný uplynulý čas (v sekundách).

%S

Celkový počet sekund CPU, které proces strávil v módu jádra.

%U

Celkový počet sekund CPU, které proces strávil v uživatelském módu.

%P

Procentní podíl z CPU, který proces dostal, spočtený jako (%U + %S) / %E.

Paměť

%M

Maximální velikost fyzické paměti využité procesem, dosažená za jeho běhu, v kilobajtech.

%t

(Není v tcsh.) Průměrná fyzické paměti využité procesem, v kilobajtech.

%K

Průměrné celkové (data+zásobník+text) využití paměti procesem, v kilobajtech.

%D

Průměrná velikost odsdíleného prostoru dat procesu, v kilobajtech.

%p

(Není v tcsh.) Průměrná velikost odsdíleného prostoru zásobníku procesu, v kilobajtech.

%X

Průměrná velikost odsdíleného prostoru textu, v kilobajtech.

%Z

(Není v tcsh.) Velikost stránky systému, v bajtech. Toto je systémová konstanta, která se mezi systémy liší.

%F

Počet závažných stránkovacích chyb, ke kterým došlo při běhu procesu. To jsou případy, kdy musela být stránka načtena z disku.

%R

Počet podružných stránkovacích chyb. To jsou chyby stránek, které nejsou platné, ale ještě nebyly zabrány jinými virtuálními stránkami. Tudíž data ve stránce jsou stále platná, ale tabulky systému musejí být aktualizovány.

%W

Kolikrát byl proces odstránkován z paměti.

%c

Kolikrát proces nedobrovolně změnil kontext (protože vypršel přidělený čas).

%w

Počet čekání: kolikrát program dobrovolně změnil kontext, např. při čekání na dokončení I/O operace.

I/O

%I

Number of file system inputs by the process.

%O

Number of file system outputs by the process.

%r

Počet zpráv socketů přijatých procesem.

%s

Počet zpráv socketů odeslaných procesem.

%k

Počet signálů doručených procesu.

%C

(Není v tcsh.) Jméno a argumenty příkazové řádky časovaného příkazu.

%x

(Není v tcsh.) Návratová hodnota příkazu.

Volby GNU
−f
FORMÁT, −−format=FORMÁT

Určuje výstupní formát, má přednost před určením formátu proměnnou prostředí TIME.

−p, −−portability

Použije přenositený výstupní formát.

−o SOUBOR, −−output=SOUBOR

Neposílá výsledek na stderr, ale přepíše určený soubor.

−a, −−append

(Použito společně s −o.) Nepřepíše soubor, připojí výsledek k němu.

−v, −−verbose

Ukecaný výstup obsahující vše, o čem program ví.

Standardní volby GNU

−−help

Vypíše návod k použití na standardní výstup a bezchybně skončí.

−V, −−version

Vypíše číslo verze na standardní výstup a bezchybně skončí.

−−

Konec seznamu voleb.

CHYBY

Některé zdroje nejsou v některých verzích Unixu měřeny, takže některé hodnoty mohou být nahlášeny jako nuly. Současný výběr byl z velké části inspirován daty, které poskytují verze 4.2 nebo 4.3BSD.

GNU time ve verzi 1.7 ještě není lokalizován. Tudíž neimplementuje požadavky POSIX.

Proměnná prostředí TIME byla vybrána špatně. Není nezvyklé, že systémy jako autoconf(1) nebo make(1) používají proměnnou prostředí s názvem programu k určení utility, která má být použita. Použití proměnných jako MORE nebo TIME pro volby programů (namísto úplných cest k programům) často způsobuje potíže.

To, že −o přepisuje namísto připojení se zdá být jako nepříliš štastné řešení. (Tj. volba −a by měla být výchozí.)

Nápady a hlášení chyb v GNU time posílejte na
bug−utils [AT] prep.edu

Prosím uvedte verzi programu time, kterou získáte spuštěním
time −−version

a operační systém a použitý překladač C.

DALŠÍ INFORMACE

tcsh(1), times(2), wait3(2)

TIRÁŽ

Tato stránka je součástí projektu Linux man−pages. Popis projektu a informace o hlášení chyb najdete na http://www.kernel.org/doc/man−pages/.