⏱️

curl を time コマンドで測るのはやめよう

に公開

curl なら -w を使うんだぞ

% time curl -I -w "%{time_total}\n" "https://www.lipsum.com/"
HTTP/1.1 200 OK
Date: Thu, 26 Jun 2025 02:35:51 GMT
Server: Apache
Vary: Accept-Encoding
Strict-Transport-Security: max-age=31536000; includeSubDomains
Content-Type: text/html; charset=utf-8

0.487079
curl -I -w "%{time_total}\n" "https://www.lipsum.com/"  0.01s user 0.01s system 4% cpu 0.514 total

See: https://curl.se/docs/manpage.html > -w, --write-out <format> > time_total

HTTPie なら --print か -vv を使うんだぞ

% time http --print=m GET "https://www.lipsum.com/"
Elapsed time: 0.4893067079s

http --print=m GET "https://www.lipsum.com/"  0.19s user 0.06s system 23% cpu 1.023 total

--print で m(meta) を取ると他が見えないから、個別にほしいなら --print=HBhbm とかをいじって渡してみればいい。
全て指定するのは -vv と同等なので、全部ほしいなら http -vv GET "https://www.lipsum.com/" みたいに叩いておけばいいと思う。

See: https://httpie.io/docs/cli/what-parts-of-the-http-exchange-should-be-printed

どうして time がだめなのか

説明しないとだめ...?
(TODO: 気が向いたら書きます...)

Discussion