GNU/Linux >> Tutoriels Linux >  >> Linux

Obtenir le temps d'exécution du programme dans le shell

Utilisez le time intégré mot-clé :

$ help time

time: time [-p] PIPELINE
    Execute PIPELINE and print a summary of the real time, user CPU time,
    and system CPU time spent executing PIPELINE when it terminates.
    The return status is the return status of PIPELINE.  The `-p' option
    prints the timing summary in a slightly different format.  This uses
    the value of the TIMEFORMAT variable as the output format.

Exemple :

$ time sleep 2
real    0m2.009s
user    0m0.000s
sys     0m0.004s

Vous pouvez obtenir des informations beaucoup plus détaillées que le bash intégré time (que Robert Gamble mentionne) en utilisant time(1). Normalement c'est /usr/bin/time .

Exemple de sortie détaillée :

$ /usr/bin/time -v sleep 1
       Command being timed: "sleep 1"
       User time (seconds): 0.00
       System time (seconds): 0.00
       Percent of CPU this job got: 1%
       Elapsed (wall clock) time (h:mm:ss or m:ss): 0:01.05
       Average shared text size (kbytes): 0
       Average unshared data size (kbytes): 0
       Average stack size (kbytes): 0
       Average total size (kbytes): 0
       Maximum resident set size (kbytes): 0
       Average resident set size (kbytes): 0
       Major (requiring I/O) page faults: 0
       Minor (reclaiming a frame) page faults: 210
       Voluntary context switches: 2
       Involuntary context switches: 1
       Swaps: 0
       File system inputs: 0
       File system outputs: 0
       Socket messages sent: 0
       Socket messages received: 0
       Signals delivered: 0
       Page size (bytes): 4096
       Exit status: 0

#!/bin/bash
START=$(date +%s)
# do something
# start your script work here
ls -R /etc > /tmp/x
rm -f /tmp/x
# your logic ends here
END=$(date +%s)
DIFF=$(( $END - $START ))
echo "It took $DIFF seconds"

Linux
  1. Comment obtenir l'adresse IP externe dans un script shell ?

  2. Comment obtenir des descriptions des options `shopt` disponibles ?

  3. Obtenir la taille de la base de données dans MySQL

  4. 7 exemples Strace pour déboguer l'exécution d'un programme sous Linux

  5. Un moyen portable d'obtenir la taille du fichier (en octets) dans le shell ?

Comment obtenir la taille d'un répertoire sous Linux

Comment obtenir la date et l'heure actuelles en Python

Comment obtenir la taille d'un répertoire sous Linux

Imprimer le temps d'exécution du script Shell sous Linux

Comment obtenir le contenu d'une page Web dans une variable shell ?

Comment obtenir le PYTHONPATH en shell?