curl の使い方
URL にアクセス
書き方
curl [-I] [-s] [-o ファイル] URL
Web サーバーの動作確認に使います。-I でヘッダーだけ、-o でファイルに保存。
よく使うオプション
| オプション | 意味 |
|---|---|
-I | ヘッダーだけを取る |
-i | ヘッダーと中身の両方を出す |
-s | 進み具合やエラーの表示を出さない |
-o ファイル | 中身をファイルに保存する |
-O | URL の最後の名前で保存する |
-L | 転送(リダイレクト)先までたどる |
-v | やりとりを詳しく出す |
-X メソッド -d データ | POST などでデータを送る |
例
$ curl -I http://127.0.0.1/HTTP/1.1 200 OK
Server: Apache/2.4.62 (Amazon Linux)
Content-Type: text/html; charset=UTF-8Web サーバーが返す番号(200 や 404)とヘッダーだけを見ます。動いているかの確認によく使います。
$ curl -s http://127.0.0.1:3000/health
アプリの確認用の URL を開き、中身だけを出します。
$ curl -L -o app.tar.gz https://example.com/app.tar.gz
転送先までたどってファイルを取り、app.tar.gz という名前で保存します。
$ curl -v http://localhost/ 2>&1 | grep '^<'
-v の詳しい出力から、サーバーの返事(< で始まる行)だけを取り出します。
よくある間違い・注意
- Connection refused は届いたがその番号で待ち受けているものが無い、No route to host は相手の firewalld が断った、timed out は途中で黙って捨てられた(セキュリティグループ・DROP など)ことが多いです。
- -o を付けないと、画像などの中身もそのまま端末に出てしまいます。
- URL に & や ? があるときは、'…' で囲みます。
実際に打って練習する
Linux レベル1 コースの Lv58「Web に話しかける curl」で覚えます(第4章 サーバーの守り手(パッケージとサービス))。ブラウザの中のシミュレーターで、本物と同じように打って確かめられます。
Lv1〜16 は、登録不要・無料で遊べます(それより先はブロンズ以上のプランで遊べます)。