[curl] --max-time でHTTPリクエストの制限時間を指定する

作成日: 2026年10月09日

curl の --max-time オプションを使用すると、HTTPリクエストの通信にかける時間の上限を指定できます。

例えば、通信時間を最大5秒に制限するには、下記のように実行します。

curl --max-time 5 https://example.com/

--max-time 5 は、接続開始からデータ受信までの転送全体を最大5秒に制限します。制限時間を超えると通信が中断され、curl は終了ステータス 28 を返します。時間の単位は秒です。

接続の確立にかける時間だけを制限したい場合は、--connect-timeout を使用します。下記の例では接続時間を最大2秒、転送全体を最大5秒にしています。

curl --connect-timeout 2 --max-time 5 https://example.com/

--connect-timeout は名前解決や接続の確立までに適用され、接続後のデータ受信には適用されません。そのため、通信全体の上限が必要な場合は --max-time を指定します。

なお、--retry を併用した場合、--max-time は各転送試行に適用されます。再試行を含む処理全体の時間を制限するには --retry-max-time も検討してください。

参考

Shell command curl