Linuxのカールの使用ガイドライン

簡単な紹介

カールは、Webサーバーを要求するために使用される一般的に使用されるコマンドラインツールです。その名は、URLツールのクライアント(クライアント)の意味です。

これは、コマンドラインパラメータの数十として多くのように、非常に強力です。熟練した場合、ポストマンは、グラフィカルなインターフェイスのこのタイプを置き換えることができます。

この記事では、簡単にアクセスするための日々の基準として、その主なコマンドラインパラメータについて説明します。主から翻訳「カールクックブック」スペースを節約するために、以下の例では、出力ランタイムが含まれていませんが、初心者には、私の以前の書き込みを見ることができ、「初心者のためのカールチュートリアル」

場合は、パラメータなし、カールは、GETリクエストを発行することです。


$ curl https://www.example.com

するために上記のコマンドwww.example.comGETリクエストを発行し、コンテンツサーバはコマンドライン出力で返されます。

-A

-Aパラメータは、すなわち、クライアント・ユーザー・エージェント・ヘッダーを指定しますUser-Agentカールデフォルトのユーザーエージェント文字列curl/[version]


$ curl -A 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.100 Safari/537.36' https://google.com

上記のコマンドはなりますUser-AgentChromeブラウザを変更します。


$ curl -A '' https://google.com

上記のコマンドが削除されUser-Agent、ヘッダを。

あなたもすることができ-H、直接ヘッダーを指定するパラメータを変更しますUser-Agent


$ curl -H 'User-Agent: php/1.0' https://google.com

-b

-bクッキーのパラメータは、サーバに送信するために使用されます。


$ curl -b 'foo=bar' https://google.com

上記コマンドは、ヘッダを生成し、Cookie: foo=barサーバ名に送信し、foobarクッキーの。


$ curl -b 'foo1=bar;foo2=bar2' https://google.com

上記コマンドは、2つのクッキーを送信します。


$ curl -b cookies.txt https://www.google.com

上記のコマンドは、ローカルファイル読み込みcookies.txtクッキー(サーバ設定を参照している、-cパラメータ)を、サーバに送信します。

-c

-cファイルサーバへのクッキーのパラメータ設定。


$ curl -c cookies.txt https://www.google.com

上記のコマンドは、HTTPサーバー・セットクッキー書かれたテキストファイルに応答しますcookies.txt

-d

-d送信データPOSTリクエストのボディに使用されるパラメータ。


$ curl -d'login=emma&password=123'-X POST https://google.com/login
# 或者
$ curl -d 'login=emma' -d 'password=123' -X POST  https://google.com/login

使用される-dパラメータの後、HTTPリクエストヘッダが自動的に追加されますContent-Type : application/x-www-form-urlencodedそして、自動的に変換されたPOSTリクエストメソッドは、省略することができます-X POST

-dローカルパラメータデータはテキストファイルがサーバーに送信されて読み取ることができます。


$ curl -d '@data.txt' https://google.com/login

読み取るための上記のコマンドdata.txtそのデータとしてサーバに送信されたファイルの内容を、。

--data-でurlencode

--data-urlencode同等のパラメータ-dデータを自動的にURLエンコードを送信されることを除いて、データ送信のPOSTリクエストのボディ、。


$ curl --data-urlencode 'comment=hello world' https://google.com/login

上記のコードでは、送信されたデータは、hello worldURLエンコードが必要である、との間の空間を有しています。

-e

-eパラメータがHTTPヘッダを設定Referer要求元を示します。


curl -e 'https://google.com?q=example' https://www.example.com

上記コマンドRefererヘッダが設定されていますhttps://google.com?q=example

-H直接追加することにより、ヘッダパラメータは、Referer同じ効果を達成します。


curl -H 'Referer: https://google.com?q=example' https://www.example.com

-F

-Fパラメーターは、サーバーにバイナリファイルをアップロードするために使用しました。


$ curl -F '[email protected]' https://google.com/profile

上記コマンドは、HTTPリクエストヘッダを追加しContent-Type: multipart/form-data、ファイル、photo.pngなどのfileフィールドをアップロードします。

-Fパラメータは、MIMEタイプを指定することができます。


$ curl -F '[email protected];type=image/png' https://google.com/profile

上記のコマンドは、MIMEタイプを指定しimage/png、それ以外の場合は、MIMEタイプがセットでカールしますapplication/octet-stream

-Fパラメータは、ファイル名を指定することができます。


$ curl -F '[email protected];filename=me.png' https://google.com/profile

上記のコマンドは、元のファイルの名前はphoto.png、サーバーは指定されたファイルを受け取りますme.png

-G

-Gパラメータは、URLのクエリ文字列を構築するために使用されます。


$ curl -G -d 'q=kitties' -d 'count=20' https://google.com/search

GETリクエストを発行します。上記のコマンドは、URLが実際に要求されますhttps://google.com/search?q=kitties&count=20省略した場合--G、それは、POSTリクエストを発行します。

URLエンコードされたデータのニーズをと結合される場合--data--urlencodeのパラメータ。


$ curl -G --data-urlencode 'comment=hello world' https://www.example.com

-H

-Hパラメータは、HTTPリクエストヘッダに付加されます。


$ curl -H 'Accept-Language: en-US' https://google.com

上記のコマンドは、HTTPヘッダーを追加しますAccept-Language: en-US


$ curl -H 'Accept-Language: en-US' -H 'Secret-Message: xyzzy' https://google.com

上記の2つのコマンドはHTTPヘッダを追加します。


$ curl -d '{"login": "emma", "pass": "123"}' -H 'Content-Type: application/json' https://google.com/login

上記コマンドは、HTTPリクエスト・ヘッダーが追加されContent-Type: application/json、続いて-d送信データパラメータJSON。

-私

-iパラメータサーバ応答のHTTPヘッダをプリントアウト。


$ curl -i https://www.example.com

上記のコマンド・サーバー応答を受信した後、サーバ応答ヘッダーの最初の出力は、ブランク行、出力ソースウェブ。

-私

-IHEADリクエストパラメータ送られ、サーバは、プリントサーバにHTTPヘッダを返します。


$ curl -I https://www.example.com

HEADリクエストに上記のコマンドサーバー応答の出力。

--headパラメータに相当-I


$ curl --head https://www.example.com

-k

-kSSLパラメータはスキップされた検出を指定します。


$ curl -k https://www.example.com

上記のコマンドは、サーバのSSL証明書が正しいかチェックしません。

-L

-Lパラメータは、HTTPサーバーのリダイレクト要求に従います。カールデフォルトでは、リダイレクトに従っていません。


$ curl -L -d 'tweet=hi' https://api.twitter.com/tweet

--limit-率

--limit-rate低速環境をシミュレートするために、HTTPリクエストとレスポンスの帯域幅を制限するために使用します。


$ curl --limit-rate 200k https://google.com

上記のコマンドは、毎秒200Kバイトの帯域幅を制限します。

-o

-oパラメータはと同等の応答にファイルサーバへ保存されますwgetコマンド。


$ curl -o example.html https://www.example.com

上記のコマンドはなりますwww.example.comとして保存しますexample.html

-The

-Oファイルに保存されたパラメータを使用して、サーバ応答、およびファイル名としてURLの最後の部分。


$ curl -O https://www.example.com/foo/bar.html

上記のコマンドは、指定されたファイルに対応するためにサーバーに保存されますbar.html

-s

-sパラメータを出力しませんエラーや進捗情報。


$ curl -s https://www.example.com

上記のコマンド・エラーが発生すると、エラーメッセージが表示されません。エラーが発生しない、それが正常に動作して結果を表示します。

あなたはカールが任意の出力を生成しない場合は、次のコマンドを使用することができます。


$ curl -s -o /dev/null https://google.com

-S

-S出力のみエラーメッセージ、通常はパラメータを指定-s一緒に使用します。


$ curl -s -o /dev/null https://google.com

エラーが発生しない限り、上記、何も出力を指令しません。

-u

-uパラメーターは、サーバー認証のユーザー名とパスワードを設定するために使用します。


$ curl -u 'bob:12345' https://google.com/login

上記のコマンドは、ユーザ名の設定bob、パスワードを12345、次にHTTPヘッダにAuthorization: Basic Ym9iOjEyMzQ1

URL内のカールは、ユーザー名とパスワードを識別することができます。


$ curl https://bob:[email protected]/login

上記のコマンドは、例えば、HTTPヘッダの内側に変換したユーザ名とパスワードのどのURLを識別することができます。


$ curl -u 'bob' https://google.com/login

ユーザ名のみを設定し、上記のコマンドは、実行後、カールは、パスワードを入力するようユーザーに促します。

-v

-vデバッグのための通信処理の全体パラメータの出力。


$ curl -v https://www.example.com

--traceパラメータはまた、デバッグに使用することはなく、生のバイナリデータを出力することができます。


$ curl --trace - https://www.example.com

-バツ

-xパラメータは、プロキシHTTP要求を指定します。


$ curl -x socks5://james:cats@myproxy.com:8080 https://www.example.com

HTTPリクエストは、上記のコマンドで指定されたmyproxy.com:8080SOCKS5プロキシを発行しています。

あなたが代理店契約を指定しない場合、デフォルトはHTTPです。


$ curl -x james:cats@myproxy.com:8080 https://www.example.com

上記のコマンド、HTTPプロトコルを使用してエージェントを要求。

-バツ

-XHTTPリクエストが指定するパラメータの方法。


$ curl -X POST https://www.example.com

上記のコマンドhttps://www.example.com要求がPOSTを発行しました。

参考リンク

公開された109元の記事 ウォンの賞賛101 ビュー360 000 +

おすすめ

転載: blog.csdn.net/Alen_xiaoxin/article/details/105048808