cURL
cURL は URL を使ってデータを転送するためのコマンドラインツールおよびライブラリです。このコマンドは、HTTP、HTTPS、FTP、SCP や SFTP などさまざまなプロトコルをサポートしています。また、スクリプトのように、ユーザーの操作なしで動作するように設計されています。
インストール
使用方法
ダウンロード
cURL の一般的な使用例は、指定したファイルにリソースをダウンロードすることです。
$ curl -o file name URL
URL にファイル名が含まれている場合は、リソースをその名前のファイルに直接保存できます。
$ curl -O URL
同様に、-J
を使用すると、ファイルの名前を決めるためのヒントを HTTP サーバー (Content-Disposition
ヘッダー) から受け取ることができます。-O
と組み合わせると、HTTP サーバーが応答でファイル名のヒントを返さなかった場合は、curl は URL で指定されたファイル名を使用します。
また、出力オプションを省略して、リソースを標準出力に出力することもできます。
$ curl URL
HTTP POST
cURL を使用して HTTP POST リクエストを行うことができます。
$ curl -d 'request body' URL
リクエストの本文がコマンドラインに収まらない場合は、cURL はファイルからリクエストを読み込むことができます。
$ curl -d @file name URL
場合によっては、Content-Type
ヘッダーにカスタム値を指定する必要があるかもしれません(cURL のデフォルト値は application/x-www-form-urlencoded
)。これには -H
を使います。例えば、JSON body を利用して、POST リクエストを作成する場合は以下のようにします。
$ curl -d 'json body' -H 'Content-Type: application/json' URL
なお、curl には json で投稿データを書き込み、それらのヘッダーを自動的に変更するオプションもあります: --json
:
$ curl --json '{"key":"value"}' URL
参照
- Wikipedia:ja:cURL
- Everything curl - cURL の使用に関する広範なガイド
- curl(1)