time sous Linux avec des exemples
La commande time sous Linux est comme un chronomètre intégré directement dans votre terminal de ligne de commande. La commande time est capable de suivre le temps nécessaire à l’exécution d’une commande. Tout ce que vous avez à faire est de faire précéder une commande de la commande time. Votre commande s’exécutera normalement, mais elle affichera également la durée de la commande.
Si vous avez déjà eu besoin de mesurer la durée d’une commande, c’est l’outil idéal pour le faire. Il s’agit d’une commande de base avec très peu d’options et un objectif simple. Il ne faut donc pas longtemps pour apprendre. Dans ce tutoriel, vous allez apprendre à l’utiliser sous Linux à travers des exemples. Suivez nos exemples ci-dessous pour voir comment cela fonctionne.
Dans ce tutoriel, vous allez apprendre :
- Comment utiliser la commande time sous Linux
Options fréquemment utilisées
La commande time a une syntaxe simple et un objectif très simple, il ne faut donc pas longtemps pour l’apprendre. Les exemples suivants vous apprendront tout ce que vous devez savoir sur la commande time, et la section avancée vous montrera quelques options moins utilisées qui peuvent s’avérer utiles de temps en temps.
Notez que dans ce guide, nous travaillons principalement avec la commande Bash time. GNU et d’autres shells système comme zsh ont leurs propres versions de la commande time, qui fonctionnent légèrement différemment. Principalement, leur production est un peu différente.
time dans Linux Exemples de base
Comme mentionné précédemment, il suffit de faire précéder n’importe quelle commande de la commande de temps pour mesurer le temps d’exécution de la commande. Un exemple parfait serait la commande wget, qui est utilisée pour télécharger un fichier à partir d’Internet. Avec la commande time, nous pouvons mesurer efficacement le temps qu’il faut pour télécharger un fichier sur notre ordinateur.
time wget http://example.com/linux.isoLa partie à laquelle nous voulons prêter attention est les trois dernières lignes, qui ont été produites par le temps.
real 4m12.067s user 0m0.086s sys 0m1.030sVoici ce que signifient ces informations :
réel : le temps réel nécessaire à l’exécution de la commande
Et maintenant, essayons le même téléchargement, tout en mesurant avec le temps GNU. Nous pouvons dire à notre système d’utiliser cette implémentation spécifique de la commande time en fournissant le chemin complet de la commande –
/usr/bin/time./usr/bin/time wget http://example.com/linux.isoNous ne nous intéresserons qu’aux deux dernières lignes – celles de l’époque GNU.
0.05user 0.95system 0:08.64elapsed 11%CPU (0avgtext+0avgdata 7220maxresident)k 0inputs+30488outputs (0major+428minor)pagefaults 0swaps
user – le temps que le processeur a passé en mode utilisateur
sys – le temps que le processeur a passé en mode noyau
Cela produit les mêmes informations que le temps, ainsi que des statistiques plus détaillées et une mesure très lisible de l’utilisation du processeur.
Vous pouvez toujours utiliser la commande man pour en savoir plus sur la commande time et sa documentation officielle. Cliquez sur le lien précédent pour voir comment ouvrir les pages de manuel pour n’importe quelle commande sur un système Linux.
Utilisation avancée
La commande time est assez simple, et vous constaterez probablement que vous ne fournissez généralement pas d’options supplémentaires lors de l’exécution de la commande. Cependant, il existe quelques options différentes qui peuvent fournir du temps GNU qui sera certainement utile dans diverses situations. Dans cette section du guide, nous allons vous montrer quelques-unes des options moins connues que nous pensons utiles.
time dans Linux Advanced Exemples
Utilisez l’option
-opour envoyer la sortie de temps à un fichier spécifié au lieu de l’erreur standard comme c’est généralement le cas./usr/bin/time -o download.log wget http://example.com/linux.isoUtilisez l’option
-v(verbeux) pour obtenir une sortie très détaillée. Soyez averti que la sortie est très grande, vous ne vous retrouverez donc probablement pas à utiliser cette option très souvent./usr/bin/time -v wget http://example.com/linux.iso Command being timed: "wget https://wordpress.org/latest.tar.gz" User time (seconds): 0.08 System time (seconds): 0.25 Percent of CPU this job got: 10% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:03.15 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): 7112 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 0 Minor (reclaiming a frame) page faults: 426 Voluntary context switches: 455 Involuntary context switches: 76 Swaps: 0 File system inputs: 0 File system outputs: 29448 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0
Dans ce cas, le résultat de la commande time est envoyé à download.log plutôt qu’au terminal.
Réflexions finales
Dans ce guide, nous avons tout appris sur la commande time qui est la seule commande que vous aurez besoin de savoir lorsque vous aurez besoin de mesurer le temps nécessaire à l’exécution d’un élément sur un système Linux. Cette commande est très simple, vous n’aurez donc généralement pas besoin de l’exécuter avec des options supplémentaires. Cependant, nous vous avons montré dans ce guide quelques options pratiques qui pourraient s’avérer utiles dans certaines situations.


