GNU/Linux >> Tutoriels Linux >  >> Linux

Vérifiez combien de temps un script bash prend pour s'exécuter avec la commande Time

C'est une commande simple qui mesure… vous l'avez deviné, le temps. Ce n'est pas une application d'horloge, cependant. Il mesure le temps nécessaire à l'exécution d'un programme ou d'un script.

[email protected]:~$ time ./script.sh
real 0m12.010s
user 0m0.004s
sys 0m0.006s

J'expliquerai la commande time et sa sortie dans une minute.

Il existe plusieurs versions différentes de l'utilitaire de temps. Ici, nous examinerons la version de Bash, car c'est celle que vous êtes le plus susceptible de rencontrer sur votre système. Il existe également une version Zsh et une version GNU.

Évitons toute confusion et vérifions votre version maintenant.

[email protected]:~$ type time
time is a shell keyword

Si votre sortie ressemble à ceci, c'est parfait. Cela signifie que vous utilisez bash. La commande effectue la même tâche dans toutes ses itérations, donc si vous n'utilisez pas bash, n'ayez crainte, vous pourrez toujours comprendre ce qui se passe. Cependant, cela peut sembler très différent.

Utilisation de la commande time

La commande Time mesure les éléments suivants :

  • temps réel :temps total écoulé
  • utilisateur :traitement du système d'exploitation en mode utilisateur
  • sys :traitement du système d'exploitation en mode noyau

Il peut être utilisé avec n'importe quelle commande ou commandes canalisées.

Temps passé avec une application textuelle

Prenons un exemple avec nano. Nano est un éditeur de texte basé sur un terminal. Si je démarre nano et que je quitte rapidement l'application (Ctrl+X), la sortie ressemblera à ceci :

time nano
real    0m1.465s
user    0m0.031s
sys        0m0.006s

Temps passé avec une application graphique

Cela fonctionne également avec une application graphique. La sortie sera renvoyée une fois l'application fermée normalement ou si une interruption (CTRL+C) est entrée au niveau du terminal.

time firefox
real    0m6.784s
user    0m4.962s
sys        0m0.459s

Version GNU traditionnelle

Comme je l'ai déjà mentionné, la plupart des utilisateurs de Linux exécutent Bash, qui utilise essentiellement un raccourci pour créer un contenu lisible par l'homme. Vous pouvez exécuter la version complète de GNU en utilisant le caractère d'échappement \ . Cela contournera le raccourci intégré.

Cette fois, j'utiliserai simplement la commande sleep pour créer un travail factice. Le nombre est la durée en secondes. Vous verrez également cela reflété dans le temps réel de la sortie.

Notez qu'étant donné qu'il s'agit d'une tâche fictive, aucun temps de ressource réel n'y est consacré.

[email protected]:~$ \time sleep 3
0.00user 0.00system 0:03.00elapsed 0%CPU (0avgtext+0avgdata 1944maxresident)k
0inputs+0outputs (0major+75minor)pagefaults 0swaps

Cette sortie est un peu plus difficile à lire, mais elle partage également des informations sur l'utilisation de la RAM qui pourraient vous être utiles.

Temps GNU -p =temps (bash)

La sortie que vous voyez normalement avec la version bash est un peu comme un alias vers le temps GNU exécuté avec le -p option.

[email protected]:~$ \time -p sleep 3
real 3.00
user 0.00
sys 0.00

Comme vous pouvez le voir, cela nous donne le même résultat que si nous l'avions exécuté avec le raccourci bash.

Conclusion

Avez-vous apprécié notre guide de la commande de temps? J'espère que tous ces conseils vous ont appris quelque chose de nouveau.

Si vous aimez ce guide, partagez-le sur les réseaux sociaux. Si vous avez des commentaires ou des questions, laissez-les ci-dessous. Si vous avez des suggestions de sujets que vous aimeriez voir abordés, n'hésitez pas à les laisser également. Merci d'avoir lu.


Linux
  1. Comment exécuter une commande Linux bash dans un script PERL ?

  2. Comment configurer Bash pour qu'il exécute *.exe avec Mono ?

  3. Dans un script bash, comment la commande Continuer fonctionne-t-elle avec les boucles intégrées ?

  4. Autorisation refusée avec bash.sh pour exécuter cron

  5. Exécutez la commande bash sur le pipeline jenkins

Comment exécuter une commande / un script Linux Shell en arrière-plan

Comment exécuter une commande pendant une durée spécifique sous Linux

Comment vérifier la version du système d'exploitation avec la ligne de commande Linux

Comment exécuter un script bash

Exécuter des commandes avec une limite de temps dans Ubuntu 20.04

Comment vérifier la syntaxe d'un script Bash sans l'exécuter ?