Časový příkaz se používá k určení, jak dlouho trvá spuštění daného příkazu. Je to užitečné pro testování výkonu vašich skriptů a příkazů.
Pokud máte například dva různé skripty, které provádějí stejnou práci, a chcete vědět, který z nich funguje lépe, můžete pomocí příkazu Linux time určit dobu provádění každého skriptu.
Verze příkazu času #
Bash i Zsh, nejrozšířenější linuxové shelly, mají své vlastní vestavěné verze příkazu time, které mají přednost před příkazem Gnu time.
Můžete použít type
příkaz k určení, zda je čas binární nebo vestavěné klíčové slovo.
type time
# Bash
time is a shell keyword
# Zsh
time is a reserved word
# GNU time (sh)
time is /usr/bin/time
Chcete-li použít příkaz Gnu time, musíte zadat úplnou cestu k binárnímu času, obvykle /usr/bin/time
, použijte env
nebo použijte úvodní zpětné lomítko \time
což zabraňuje použití obou i vestavěných.
Čas Gnu vám umožňuje formátovat výstup a poskytuje další užitečné informace, jako jsou I/O paměti a volání IPC.
Použití Linux Time Command #
V následujícím příkladu změříme čas potřebný ke stažení jádra Linuxu pomocí nástroje wget:
time wget https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.19.9.tar.xz
To, co se vytiskne jako výstup, závisí na verzi časového příkazu, který používáte:
# Bash
real 0m33.961s
user 0m0.340s
sys 0m0.940s
# Zsh
0.34s user 0.94s system 4% cpu 33.961 total
# GNU time (sh)
0.34user 0.94system 0:33.96elapsed 4%CPU (0avgtext+0avgdata 6060maxresident)k
0inputs+201456outputs (0major+315minor)pagefaults 0swaps
- skutečné nebo celkem nebo uplynulo (čas nástěnných hodin) je čas od začátku do konce hovoru. Je to čas od okamžiku, kdy stisknete
Enter
klíč až do okamžikuwget
příkaz je dokončen. - uživatel - množství času CPU stráveného v uživatelském režimu.
- systém nebo sys - množství času procesoru stráveného v režimu jádra.
Závěr č.
Nyní byste měli dobře rozumět tomu, jak používat příkaz time. Pokud se chcete dozvědět více o příkazu Gnu time, navštivte manpage time.