Ich möchte einen time
Befehl ausführen , um die Zeit mehrerer Befehle zu messen.
Was ich machen möchte ist:
- Messen Sie die Laufzeit von allen zusammen
- Schreiben Sie die
time
Ausgabe in eine Datei - Schreiben Sie das
STDERR
aus dem Befehl, den ich zu messen binSTDERR
Was ich NICHT tun möchte, ist
- Schreiben Sie die mehrere Befehle in einem separaten Skript (warum? Weil all dies ist bereits ein Skript , das ich programmatisch bin zu erzeugen, und die Schaffung von ANOTHER temporäre Skript würde mehr Chaos als ich will)
Was ich bisher versucht habe:
/usr/bin/time --output=outtime -p echo "a"; echo "b";
Funktioniert nicht, time
wird nur auf dem ersten ausgeführt.
/usr/bin/time --output=outtime -p ( echo "a"; echo "b"; )
Funktioniert nicht, (
ist unerwartetes Token.
/usr/bin/time --output=outtime -p { echo "a"; echo "b"; }
Funktioniert nicht, "keine solche Datei oder Verzeichnis".
/usr/bin/time --output=outtime -p ' echo "a"; echo "b";'
Funktioniert nicht, "keine solche Datei oder Verzeichnis".
time ( echo "a"; echo "b"; ) 2>outtime
Funktioniert nicht, da es alle STDERR
in umleitet outtime
; Ich möchte nur die time
Ausgabe dort.
Und natürlich,
time --output=outime echo "a";
Funktioniert seitdem nicht mehr --output=outime: command not found
.
Wie kann ich es tun?
time -p sh -c 'echo "a"; echo "b"'