Zeit (Unix)
Entwickler (en) | Verschiedene Open Source und kommerziell Entwickler |
---|---|
Betriebssystem | Unix, Unix-artig, Inferno |
Plattform | Plattformübergreifend |
Typ | Befehl |
Im Computer, Zeit
ist ein Befehl in Unix und Unix-artig Betriebssysteme. Es wird verwendet, um die Dauer der Ausführung eines bestimmten zu bestimmen Befehl.
Überblick
Zeit (1)
kann als eigenständiges Programm existieren (wie z. GNU Zeit) oder als Hülse in den meisten Fällen gebaut (z. B. in Sch, verprügeln, TCSH oder in ZSH).
Benutzerzeit gegen Systemzeit
Die gesamte CPU -Zeit ist die Kombination der Zeit, die die CPU oder die CPUs für die Durchführung von Maßnahmen für ein Programm und die Zeit, die sie für die Ausführung verbracht haben Systemaufrufe für die Kernel im Namen des Programms. Wenn ein Programm durch ein Array schaltet, sammelt es die CPU -Zeit der Benutzer an. Umgekehrt, wenn ein Programm a ausführt Systemanruf wie zum Beispiel Geschäftsführer
oder Gabel
Es sammelt die CPU -Zeit des Systems an.
Echtzeit gegen CPU -Zeit
Der Begriff "Echtzeit" in diesem Zusammenhang bezieht sich auf verstrichene Wandverkaufszeit, wie eine Stoppuhr. Die Gesamt -CPU -Zeit (Benutzerzeit + Systemzeit) kann mehr oder weniger als dieser Wert betragen. Da ein Programm einige Zeit damit verbringt, überhaupt nicht auszuführen (ob im Benutzermodus oder im Systemmodus), kann die Echtzeit größer sein als die gesamte CPU -Zeit. Weil ein Programm Kinder geben kann, deren CPU -Zeiten (sowohl Benutzer als auch SYS) zu den von den gemeldeten Werten hinzugefügt werden Zeit
Befehl, aber auf einem Multicore -System werden diese Aufgaben parallel ausgeführt, die Gesamt -CPU -Zeit kann größer sein als die Echtzeit.
Verwendungszweck
Um den Befehl zu verwenden, gehen Sie einfach einem Befehl des Wortes vor Zeit
, wie zum Beispiel:
$ Zeit ls
Wenn der Befehl abgeschlossen ist, Zeit
wird berichten, wie lange es gedauert hat, um die auszuführen ls
Befehl in Bezug auf den Benutzer CPU -Zeit, System CPU -Zeit und Echtzeit. Das Ausgabeformat variiert zwischen verschiedenen Versionen des Befehls, und einige geben zusätzliche Statistiken an, wie in diesem Beispiel:
$ Zeit Gastgeber Wikipedia.orgwikipedia.org hat die Adresse 103.102.166.224 Wikipedia.org Mail wird mit 50 MX2001.Wikimedia.org behandelt. Wikipedia.org Mail wird von 10 mx1001.Wikimedia.org behandelt. Host Wikipedia.org 0.04s Benutzer 0,02S System 7% CPU 0,780 Gesamt $
Zeit (Entweder ein eigenständiges Programm oder wenn Bash Shell im POSIX -Modus ausgeführt wird und Zeit wird aufgerufen als Zeit -p
) Berichte über die Standardfehlerausgabe.
Zeit -p
Portable Skripte sollten verwendet werden Zeit -p
Modus, der ein anderes Ausgabeformat verwendet, aber mit verschiedenen Implementierungen übereinstimmt:
$ Zeit -p Sha256Sum /bin /ls12477DEB0E25209768CBD79328F943A7EA8533ECE70256CDEA96FAE0AE34D1CC /BIN /LS Echt 0,00 Benutzer 0,00 sys 0,00 $
Implementierungen
GNU -Zeit
Aktuelle Versionen der GNU -Zeit, melden Sie sich standardmäßig mehr als nur eine Zeit:
$ /usr/bin/time sha256sum/bin/ls12477DEB0E25209768CBD79328F943A7EA8533ECE70256CDEA96FAE0AE34D1CC /BIN /LS 0,00User 0,00System 0: 00,00LAPSED 100%CPU (0AVGTEXT+0AVGDATA 2156MAXRESIDENT) K. 0Inputs+0outputs (0MAJOR+96MINOR) PageFaults 0Swaps $
Format der Ausgabe für GNU Zeit, kann mit Verwendung eingestellt werden ZEIT
Umgebungsvariable und kann andere Informationen als die Ausführungszeit (d. H. Speicherverbrauch) enthalten. Dieses Verhalten ist im Allgemeinen nicht verfügbar Posix-Compliant -Zeit oder bei Ausführung als Zeit -p
.
Dokumentation davon Zeit kann normalerweise mit Verwendung von mit dem zugegriffen werden Mann 1 Mal
.
Betriebsmethode
Gemäß dem Quellcode der GNU -Implementierung von Zeit
, die meisten Informationen von Zeit
wird aus dem abgeleitet warte3
Systemanruf. Auf Systemen, die keine haben warte3
Rufen Sie die Statussinformationen zurück, die mal
Der Systemaufruf wird stattdessen verwendet.
Verprügeln
In einer beliebten Unix -Shell Verprügeln, Zeit
ist ein spezielles Schlüsselwort, das vor a eingestellt werden kann Pipeline (oder einzelner Befehl), der die Zeit der gesamten Pipeline misst, nicht nur einen einzigartigen (ersten) Befehl, und ein anderes Standardformat verwendet und vor den Berichtszeiten leere Zeile setzt:
$ Zeit seq 10000000 | WC -l10000000 Real 0m0.078s Benutzer 0m0.116s sys 0m0.029s $
Die gemeldete Zeit ist eine Zeit, die von beiden verwendet wird seq
und WC -l
aufaddiert. Das Format des Ausgangs kann mithilfe von Einstellungen eingestellt werden ZEITFORMAT
Variable.
Das Zeit ist kein gebauter, sondern ein spezielles Schlüsselwort und kann nicht als Funktion oder Befehl behandelt werden. Es ignoriert auch die Umleitung von Pipeline (auch wenn es ausgeführt wird als Zeit -p
Es sei denn, die gesamte Bash wird im "POSIX -Modus" ausgeführt).
Dokumentation davon Zeit kann mit mit dem zugegriffen werden Mann 1 Bash
, oder innerhalb eines Bashs selbst verwenden Hilfszeit
.
Siehe auch
- Systemzeit
- Cron Verarbeiten Sie für die Planung von Jobs, die zu einem bestimmten Zeitpunkt ausgeführt werden sollen
- Zeit (Befehl)
Verweise
- Die einzelne Unix -Spezifikation, Version 4 von Die offene Gruppe : Zeit ein einfacher Befehl - Shell and Utilities Referenz,
- Inferno Allgemeine Befehle Handbuch - -
- Linux Benutzer Handbuch - Benutzerbefehle : Zeit ein einfacher Befehl oder geben Sie Ressourcenverbrauch -