Ich möchte messen, wie lange es dauert, bis einige Software gestartet wird.
Ich kenne den Befehl time
Aber im Fall von Firefox (Iceweasel für mich unter Debian) gibt dieser Befehl nur die Zeit aus, zu der ich Firefox geöffnet habe. Wenn ich starte:
$ time iceweasel www.google.com
Ich habe nur eine Startzeit, nachdem ich Firefox geschlossen habe, und diese Zeit zeigt nur an, wie lange ich Firefox geöffnet gelassen habe. Zum Beispiel:
real 0m50.565s
user 0m4.276s
sys 0m0.248s
Wie kann ich genau wissen, wie viel Firefox zum Starten benötigt?
Akzeptierte Antwort:
Das ist hacky und nicht skriptfähig.
Firefox kann Javascript wie folgt über die Befehlszeile ausführen:
firefox "javascript:alert(Date.now())"
Dadurch wird Firefox geöffnet und Javascript ausgeführt, das ein Meldungsfeld mit der aktuellen Epochenzeit auf die Millisekunde genau anzeigt.
Sie können die Anzahl der Millisekunden, die in der Epochenzeit verstrichen sind, auf Ihrer Befehlszeile mit
abrufendate +%s%N | cut -b1-13
Um Ihre Frage zu beantworten, führen Sie
ausdate +%s%N | cut -b1-13; iceweasel "javascript:alert(Date.now())"
Dann subtrahieren Sie die Zahl in Ihrem Terminal von der Zahl in Firefox. Dies gibt Ihnen die Anzahl der Millisekunden, die Firefox benötigt hat, um einige grundlegende Javascripts zu öffnen und anzuzeigen.
Quellen:
- https://superuser.com/questions/157304/how-can-i-make-firefox-load-javascript-from-the-command-line
- https://stackoverflow.com/questions/3830244/get-current-date-time-in-seconds
- https://serverfault.com/questions/151109/how-do-i-get-current-unix-time-in-milliseconds-using-bash