time - ausgabe in Datei umleiten ?

Post Reply
Message
Author
rossi

time - ausgabe in Datei umleiten ?

#1 Post by rossi »

Moin,

hab ein kleines Problem mit "time", nämlich das es mir die Zeit auf die Konsole schreibt, nicht aber in eine Datei. Vor allem möchte ich _nur_ die Ausgabe von "time" haben, nicht die von dem von "time" aufgerufenen Programm. Ist, welch Überraschung, für ein Skript.

time ls -la > test

schreibt mir die Ausagabe von "ls -la" in die Datei test und die Ausgabe von "time" auf dei Konsole. Fast noch logisch.

time ls -la 2> test

klappt auch nicht, vermutlich da "time" laut man page nach stdout und nicht stderr schreibt. Auch

time > test ls -la

will nicht. Die man page ist leider mehr als spärlich.

Descartes

Re: time - ausgabe in Datei umleiten ?

#2 Post by Descartes »

/usr/bin/time -po time.log -- ls -lR > /dev/null


man time
info time

-o FILE, --output=FILE
Do not send the results to stderr, but overwrite the specified file.

BTW: csh, tcsh und bash (andere Shells ?) bringen ihre eigene Implementierung von "time" mit die _nicht_ mit der Manpage übereinstimmt aber die selbe Funktion erfüllt.
In der Bash wird ein Aufruf von
time -po time.log -- ls -lR > /dev/null
mit einer Fehlermeldung quittiert. Daher besser die time-Binary (bei mir: /usr/bin/time) aufrufen statt den Shell-internen time-Befehl.

rossi

Re: time - ausgabe in Datei umleiten ?

#3 Post by rossi »

Danke. War mein Fehler. Bei meiner man page hab ich nur bis "see also" gelesen, weil ich dachte, das das immer am Ende einer man page kommt. Nun geht es hier aber danach weiter mit den GNU Optionen - die hab ich glatt übersehen. Sorry.

Post Reply