Yanıtlar:
time
Ölçmek istediğiniz komuttan önce ekleyin . Örneğin: time ls
.
Çıktı şöyle görünecek:
real 0m0.606s
user 0m0.000s
sys 0m0.002s
İlişkin açıklama real
, user
ve sys
(dan man time
):
real
: İşlem tarafından kullanılan gerçek gerçek (duvar saati) süre, saniye cinsinden.user
: İşlemin doğrudan (kullanıcı modunda), saniye cinsinden kullanıldığı toplam CPU saniye sayısı.sys
: Sistem tarafından, işlem adına (çekirdek modunda) saniye cinsinden kullanılan toplam CPU saniye sayısı.sudo apt-get install time
kabuk kullanıyorsanız , gerekebileceğini unutmayın time
.
time
yerleşiğini ama man time
bir yürütülebilir hakkında olacaktır ( /usr/bin/time
gelen time
paketin) ve çıkış farklı görünürdü. Ayrıca Bash'te, help time
yerleşiklere yardım için koşabilirsiniz .
Satır satır delta ölçümü için gnomon'u deneyin .
Zaman damgası bilgilerini başka bir komutun standart çıktısına hazırlamak için, moreutils ts gibi bir komut satırı yardımcı programıdır. Neyin uzun sürdüğünü gösteren tarihsel bir kayıt istediğiniz uzun süren işlemler için kullanışlıdır.
Herhangi bir şeyi gnomon'a pipetlemek, her satıra bir zaman damgası hazırlar ve bu satırın tampondaki son satır olduğunu gösterir - yani, sonraki satırın ne kadar sürdüğünü gösterir. Varsayılan olarak, gnomon her satır arasında geçen saniye gösterecektir, ancak bu yapılandırılabilir.
sudo npm i gnomon -g
Varsa yükleyebilirsiniz npm
. '\ R' kullanarak (aynı satırda kalarak) "ilerleme" satırlarına karşı ne kadar iyi çalıştığından emin değilsiniz: bu durumda, ayrı olanları değil, tek bir uzun satır olarak saymasını istiyorum.
Kullanabilirsiniz time
:
time ls -R
date +"%T" && cp -r ./file /destination/folder/here && date +"%T"
Terminalde bu komutu çalıştırmak size bir dosyayla başa çıkmak için toplam süre verecektir
find
komut - 2>/dev/null
yönlendirmeden - çok sayıda Permission denied
mesaj verir . Ancak, 2>/dev/null
bu komuta eklemek o komutun time
bölümünü keser . Aşağıdakiler, iyi bir uzlaşma sağlar: tek çıktı olarak START="$(date +"%s")" && find 2>/dev/null / -path /mnt -prune -o -name "*libname-server-2.a*" -print; END="$(date +"%s")"; TIME="$((END - START))"; printf 'find command took %s sec\n' "$TIME"
(örneğin) verilmesi /usr/lib/libname-server-2.a find command took 3 sec
.
time sudo find / -path /mnt -prune -o -name "*libname-server-2.a*" -print
(yani as sudo
) koşabilirsiniz Permission denied
.
Zaman zaman kendimi uygulamanın önyüklenmesi gibi bir eylemin ne kadar sürdüğünü saymak için bir kronometreye ihtiyacım var, bu durumda buradaki çözümlerin çoğu işe yaramaz.
Bunun için sw kullanmayı severim .
wget -q -O - http://git.io/sinister | sh -s -- -u https://raw.githubusercontent.com/coryfklein/sw/master/sw
sw
- start a stopwatch from 0, save start time in ~/.sw
sw [-r|--resume]
- start a stopwatch from the last saved start time (or current time if no last saved start time exists)
- "-r" stands for --resume
time -v command
-v
daha fazla bilgi verir
real
,user
vesys
süreleri bu komut donduğu nelerdir?