「CURL」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎HTTP POST: 情報を更新)
(ヒントとテクニックを翻訳して追加)
44行目: 44行目:
 
 
 
$ curl --json '{"key":"value"}' ''URL''
 
$ curl --json '{"key":"value"}' ''URL''
  +
  +
== ヒントとテクニック ==
  +
  +
=== リダイレクトを追跡する ===
  +
  +
リダイレクト (HTTP から HTTPS へのリダイレクトなど) を追跡するには:
  +
  +
$ curl -L ''URL''
  +
  +
=== ダウンロードエラーを表示する ===
  +
  +
デフォルトでは、curl はエラーを無視します (たとえば、ファイルにダウンロードするとき、エラーが発生した場合、curl は通知せず、空のファイルが作成されます) そのため、{{ic|--fail}} を使用してエラーメッセージを表示させたい時:
  +
  +
$ curl --fail ''URL''
  +
  +
=== 圧縮 ===
  +
  +
データを [https://everything.curl.dev/usingcurl/downloads/compression 圧縮] して転送する場合 (たとえば、帯域幅が CPU よりも制限されている状況では、curl はデータを圧縮してダウンロードし、ダウンロード後に圧縮を解除します):
  +
  +
$ curl --compressed ''URL''
  +
  +
=== プログレスバー ===
  +
  +
curl には、ファイルをダウンロードするときに通常の ProgressBar を使用するオプションがあります (例:{{ic|[##### ] 80%}} )
  +
  +
$ curl '-#' ''URL''
  +
  +
=== globing ===
  +
  +
また、curl で [https://everything.curl.dev/cmdline/globbing globing] を使用することもできます。
  +
  +
$ curl "example.com/images/[1-9].png"
  +
$ curl "example.com/{first_page,second_page,third_page}"
   
 
== 参照 ==
 
== 参照 ==
51行目: 84行目:
 
* {{man|1|curl}}
 
* {{man|1|curl}}
   
{{TranslationStatus|CURL|2021-08-09|691337}}
+
{{TranslationStatus|CURL|2023-11-20|691337}}

2023年11月20日 (月) 04:27時点における版

cURL は URL を使ってデータを転送するためのコマンドラインツールおよびライブラリです。このコマンドは、HTTP、HTTPS、FTPSCP や SFTP などさまざまなプロトコルをサポートしています。また、スクリプトのように、ユーザーの操作なしで動作するように設計されています。

インストール

curl パッケージをインストールします。

使用方法

ダウンロード

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

ヒントとテクニック

リダイレクトを追跡する

リダイレクト (HTTP から HTTPS へのリダイレクトなど) を追跡するには:

$ curl -L URL

ダウンロードエラーを表示する

デフォルトでは、curl はエラーを無視します (たとえば、ファイルにダウンロードするとき、エラーが発生した場合、curl は通知せず、空のファイルが作成されます) そのため、--fail を使用してエラーメッセージを表示させたい時:

$ curl --fail URL

圧縮

データを 圧縮 して転送する場合 (たとえば、帯域幅が CPU よりも制限されている状況では、curl はデータを圧縮してダウンロードし、ダウンロード後に圧縮を解除します):

$ curl --compressed URL

プログレスバー

curl には、ファイルをダウンロードするときに通常の ProgressBar を使用するオプションがあります (例:[##### ] 80% )

$ curl '-#' URL

globing

また、curl で globing を使用することもできます。

$ curl "example.com/images/[1-9].png"
$ curl "example.com/{first_page,second_page,third_page}"

参照

翻訳ステータス: このページは en:CURL の翻訳バージョンです。最後の翻訳日は 2023-11-20 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。