Un timer en bash

Il est parfois utile de connaître la durée d’exécution d’une commande en bash. Voici un timer qui fait le boulot.

START=$SECONDS

timer () 
        {
        hrs="$((($FINISH - $START)/3600))"
        min="$(((($FINISH - $START)/60)%60))"
        sec="$((($FINISH - $START)%60))"
        if [[ $(($FINISH - $START)) -gt 3600 ]]; then echo "$hrs:$min:$sec"
        elif [[ $(($FINISH - $START)) -gt 60 ]]; then echo "00:$min:$sec"
        else echo "00:00:$sec"
        fi
}

COMMANDE_QUI_PREND_DU_TEMPS

# affichage de la durée
FINISH=$SECONDS
ELAPSED=$(timer)
echo "durée : $ELAPSED"

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.