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
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/.