Je recherche une commande pour suivre l'heure.
J'imagine le workflow suivant:
- Exécutez la commande
- ... fais autre chose ...
- Revenez à la fenêtre du terminal et arrêtez la commande
- En sortie, vous recevez le temps écoulé entre 3 et 1
Je recherche une commande pour suivre l'heure.
J'imagine le workflow suivant:
Réponses:
Cette réponse suggère d'utiliser
time cat
et utiliser Ctrl- Dpour voir l'heure.
Vous pouvez aussi utiliser
time read
et utilisez la Enterclé
Vérifiez également cette réponse sur la même question
cat
avec ^D
au lieu de ^C
pour sortir avec 0 au lieu de 130.
Que diriez-vous:
stopwatch() {
local start=$SECONDS
read -p "Hit Enter..."
echo $((SECONDS-start)) seconds elapsed
}
En action:
$ stopwatch
Hit Enter...
14 seconds elapsed
Un moyen simple de le faire est de prendre l'heure de début, et une fois que vous arrêtez le script - prenez l'heure de fin. Enfin, imprimez le décalage horaire. Cela peut facilement être fait avec Python:
python -c $'import time;start=time.time();\ntry:\n\twhile True: time.sleep(0.25)\nexcept: print(time.time()-start)'
Ou version longue pour plus de lisibilité:
import time
start=time.time();
try:
while True: time.sleep(0.25)
except:
print(time.time()-start)
L'arrêt se fait avec Ctrl + C
while True: pass
exécute le processeur à 100%. Je suggère while True: time.sleep(1e9)
plutôt ( signal.pause()
fonctionne aussi mais nécessite une importation supplémentaire).
except KeyboardInterrupt
serait mieux