Saya baru saja beralih ke zsh
. Namun, saya benar-benar tidak suka bagaimana time
perintah builtin juga menampilkan perintah yang waktunya. Saya lebih suka bash
keluaran gaya. Adakah yang tahu bagaimana cara mengubahnya?
Zsh:
[casqa1:~/temp]$ time grep foo /dev/null
/usr/local/gnu/bin/grep --color -i foo /dev/null 0.00s user 0.00s system 53% cpu 0.004 total
Pesta:
[casqa1:~/temp]$ bash
casqa1.nyc:~/temp> time grep foo /dev/null
real 0.0
user 0.0
sys 0.0
Terima kasih,
/ YGA
TIMEFMT=$'\nreal\t%*E\nuser\t%*U\nsys\t%*S'
. The*
s dalam format bendera mereka sebagai jam / menit per bash, bukan hanya detik. Informasi lebih lanjut diTIMEFMT
sini .Pilihan lain adalah untuk menonaktifkan perintah builtin dan menggunakan biner waktu yang disediakan oleh sistem operasi Anda. Saya memiliki yang berikut ini di
.zshrc
:Dengan cara ini, waktu ditampilkan ke STDERR.
sumber
Hanya sedikit presisi mengenai jawaban yang sangat berguna dari Dennis Williamson (bagian "cukup dekat"):
time
keluaranstderr
bawaan bash untuk , sedangkan keluaran zsh kestdout
.Perintah ini dapat menggambarkan perbedaan:
time (echo abc) 2>/dev/null
Dalam bash, ini menghasilkan:
Di zsh, dengan variabel TIMEFMT yang disarankan:
sumber