Befehl nicht gefunden, wenn versucht wird, ein Format für den Zeitbefehl festzulegen


13

Ich versuche, die Zeit zu bekommen, die zum Ausführen eines Befehls benötigt wird, mit der Ausgabe in einem bestimmten Format:

time -f "%E" ls -l

Dies ähnelt dem Beispiel auf der Manpage (und auf der Online-Manpage ). Wenn ich diesen Befehl ausführe, erhalte ich jedoch:

-f: command not found

Es sieht so aus, als würde der Befehl time das -f nicht als Argument lesen, sondern als den Befehl, den ich ausführen möchte.

Wie kann ich die Ausführungszeit für einen Befehl in einem bestimmten Format ermitteln?

Antworten:


17

Dies liegt daran, dass timees sich um einen eingebauten Bash-Befehl handelt - und der eingebaute Befehl die Optionen, die Sie verwenden möchten, nicht unterstützt.

Versuchen Sie dies, verwenden Sie den vollständigen Zeitpfad, um das eingebaute zu überspringen und das echte zu verwenden:

/usr/bin/time -f "%E" ls -l

3

Leider timeist sowohl ein Bash-Schlüsselwort als auch ein Programm dabei /usr/bin. Wenn Sie den vollständigen Pfad zur Zeit angeben, erhalten Sie wie in /usr/bin/time -f "%E" ls -ldie erwartete Ausgabe.


Das Programm wird von "Zeit" -Paket zur Verfügung gestellt:apt-get install time
jonhattan
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.