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

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