GNU/Linux >> Linux の 問題 >  >> Ubuntu

Linuxのcurlコマンドを例で説明

はじめに

サーバーとの間でデータを転送するには、必要なネットワークプロトコルをサポートするツールが必要です。 Linuxには、この目的のために作成された複数のツールがあります。最も人気のあるのはcurlとwgetです。

このチュートリアルでは、 curlの使用方法を説明します コマンドを実行し、使用可能なオプションの完全なリストを提供します。

前提条件

  • 端末へのアクセス
  • インターネットアクセス
  • curlがインストールされました

curlコマンドとは何ですか?

curl (「クライアントURL」の略)は、さまざまなネットワークプロトコルを介したデータ転送を可能にするコマンドラインツールです。関連するURLと、送受信する必要のあるデータを指定することにより、Webサーバーまたはアプリケーションサーバーと通信します。

curl ポータブルなクライアント側のURL転送ライブラリであるlibcurlを利用しています。コマンドラインで直接使用することも、スクリプトに含めることもできます。 curlの最も一般的な使用例 は:

  • インターネットからファイルをダウンロードする
  • エンドポイントテスト
  • デバッグ
  • エラーログ

curl構文

基本的なcurl 構文は次のとおりです。

curl [options/URLs]

例:

curl https://www.gnu.org/gnu/gnu.html

curlの後に指定されたURLにあるHTMLコンテンツが出力されます。 コマンド。

ファイルにつながるURLを指定する場合は、 curlを使用できます。 ファイルをローカルシステムにダウンロードするには:

curl [url] > [local-file]

プログレスバーには、これまでにダウンロードされたファイルの量が表示されます。

コマンドの一部であるURLの構文は、プロトコルによって異なります。 1つの部分が異なる複数のURLは、中かっこを使用して一緒に書き込まれます:

http://example.{first,second,third}.com

英数字シリーズは角かっこで書かれています:

ftp://ftp.url.com/file[1-100].txt

ネストされたシーケンスはサポートされていませんが、複数のシーケンスが許可されています:

http://url.com/archive[2010-2020]/vol[1-4]/part{a,b,c}.html

curlプロトコル

curlは、データ転送用の多数のプロトコルをサポートしています。以下の完全なリストを見つけてください。

プロトコル 説明
DICT 単語の意味について辞書サーバーにクエリを実行するための辞書ネットワークプロトコル。
ファイル curlを使用してローカルファイルシステムからファイルを取得するためのURLスキーム。
FTP、FTPS ファイル転送プロトコル。クライアントとサーバー間のファイル転送に使用されます。 FTPSは、SSL/TLSセキュリティレイヤーが追加された同じプロトコルのバージョンです。
GOPHER、GOPHERS HTTPの前身であるインターネットドキュメントを検索、取得、および配布するための古いプロトコル。 GOPHERSは、SSL/TLSセキュリティレイヤーが追加された同じプロトコルのバージョンです。
HTTP、HTTPS ハイパーテキスト転送プロトコル。Webおよびインターネットデータ転送に使用されます。 HTTPSは、SSL/TLSセキュリティレイヤーが追加された同じプロトコルのバージョンです。
IMAP、IMAPS インターネットメッセージアクセスプロトコル。電子メールのアクセスと管理に使用されます。 IMAPSは、SSL/TLSセキュリティレイヤーが追加された同じプロトコルのバージョンです。
LDAP、LDAPS ライトウェイトディレクトリアクセスプロトコル。分散ディレクトリ情報へのアクセスと管理に使用されます。 LDAPSは、SSL/TLSセキュリティレイヤーが追加された同じプロトコルのバージョンです。
MQTT メッセージキューテレメトリトランスポート-小型デバイス(通常はIoTシステム)間のデータ交換用のプロトコル。
POP3、POP3S PostOfficeProtocolバージョン3-サーバーから電子メールを取得するためのプロトコル。 POP3Sは、SSL/TLSセキュリティレイヤーが追加された同じプロトコルのバージョンです。
RTMP リアルタイムメッセージングプロトコル-オーディオ、ビデオ、およびその他のデータのストリーミングプロトコル。
RTSP リアルタイムストリーミングプロトコル。ストリーミングメディアサーバーの管理に使用されます。
SCP SecureCopy-SSHサーバーとの間でファイルをコピーするためのプロトコル。
SFTP SSHファイル転送プロトコル-SSH接続を使用するファイル転送プロトコルのバージョン。
SMB、SMBS サーバーメッセージブロック-ファイルおよびコンピューター周辺機器への共有アクセスを管理するためのプロトコル。 SMBSは、SSL/TLSセキュリティレイヤーが追加された同じプロトコルのバージョンです。
SMTP、SMPTS Simple MailTransferProtocol-電子メールを簡単に送信するための電子メールプロトコル。 SMTPSは、SSL/TLSセキュリティレイヤーが追加された同じプロトコルのバージョンです。
TELNET 双方向のインタラクティブなテキスト指向の通信のためのアプリケーション層プロトコル。
TFTP トリビアルファイル転送プロトコル。リモートホストとの間でファイルをアップロードまたはダウンロードするために使用されます。

curlコマンドオプション

curl さまざまなオプションを受け入れるため、非常に用途の広いコマンドになります。オプションは1つまたは2つのダッシュで始まります。追加の値が必要ない場合は、一点鎖線のオプションを一緒に記述できます。たとえば、 -Oを利用するコマンド -L 、および -v オプションは次のように書くことができます:

curl -OLv [url]

利用可能なすべてのオプションのリストを以下に示します。

オプション 説明
-abstract-unix-socket ネットワーク経由ではなく、抽象Unixソケット経由で接続します。

例:
curl --abstract-unix-socket socketpath https://example.com
-alt-svc<ファイル名> alt-svcパーサーを有効にします。

例:
curl --alt-svc svc.txt https://example.com
-anyauth Curlは、指定されたHTTPURLに対して最も安全な認証方法を見つけて使用します。

例:
curl --anyauth --user me:pass https://example.com
-a、-append ターゲットファイルに追加します。

例:
curl --upload-file local --append ftp://example.com/
-aws-sigv4 AWSV4署名認証を使用します。

例:
curl --aws-sigv4 "aws:amz:east-2:es" --user "key:secret" https://example.com
-基本 HTTP基本認証を使用します。

例:
curl -u name:password --basic https://example.com
-cacert 指定されたファイルを証明書の検証に使用します。

例:
curl --cacert CA-file.txt https://example.com
-capath 指定されたディレクトリを使用して証明書を探します。

例:
curl --capath / local / directory https://example.com
-cert-status サーバー証明書のステータスを確認します。

例:
curl --cert-status https://example.com
-cert-type 提供された証明書のタイプを指定します。認識されるタイプはPEM (デフォルト)、 DER ENG およびP12

例:
curl --cert-type ENG --cert file https://example.com
-E、-cert SSLベースのプロトコルを使用する場合は、提供されている証明書ファイルを使用してください。

例:
curl --cert certfile --key keyfile https://example.com
-ciphers<暗号のリスト> 接続で使用する暗号を提供します。

例:
curl --ciphers ECDHE-ECDSA-AES256-CCM8 https://example.com
-compressed-ssh 組み込みのSSH圧縮を有効にします。

例:
curl --compressed-ssh sftp://example.com/
-圧縮 圧縮された応答の受信を要求します。

例:
curl --compressed https://example.com
-K、-config コマンドラインに書き込む代わりに、curl引数を含むテキストファイルを提供します。

例:
curl --config file.txt https://example.com
-connect-timeout curl接続が続く可能性のある最大時間を指定します。

例:
curl --connect-timeout 30 https://example.com
-connect-to 特定のサーバークラスターノードにリクエストを送信するための接続ルールを提供します。

例:
curl --connect-to example.com:443:example.net:8443 https://example.com
-C、-continue-at 指定されたオフセットでファイル転送を再開します。

curl -C 400 https://example.com
-c、-cookie-jar<ファイル名> Cookieを保存するファイルを指定します。

curl -c store.txt https://example.com
-b、--cookie ファイルからCookieを読み取ります。

例:
curl -b cookiefile https://example.com
-create-dirs -outputのローカルディレクトリを作成します オプション。

例:
curl --create-dirs --output local / dir / file https://example.com
-create-file-mode ファイル作成時に設定するモードを指定します。

例:
curl --create-file-mode 0777 -T localfile sftp://example.com/new
-crlf LFをCRLFに変換します。

curl--crlf-Tファイルftp://example.com/
-crlfile ピア証明書の証明書失効リストを提供します。

curl --crlfile revoke.txt https://example.com
-曲線<アルゴリズムリスト> SSLセッションを確立するための曲線を提供します。

例:
curl --curves X25519 https://example.com
-data-ascii -dを参照してください -データ

例:
curl --data-ascii @file https://example.com
-data-binary 追加の処理なしで、指定されたとおりにデータを投稿します。

curl --data-binary @filename https://example.com
-data-raw -dと同じ -データ 、ただし、@文字は他の文字と同じように扱われます。

curl --data-raw "@ [email protected] @" https://example.com
-data-urlencode -dと同じ -データ 、ただし、URLエンコードを実行します。

例:
curl --data-urlencode name =val https://example.com
-d、-data POSTリクエストでHTTPサーバーにデータを送信します。

例:
curl -d "name =curl" https://example.com
-委任 サーバーが資格情報を委任できる時期を指定します。

例:
curl --delegation "always" https://example.com
-ダイジェスト HTTPダイジェスト認証を有効にします。

例:
curl -u name:password --digest https://example.com
-disable-eprt アクティブなFTP転送のEPRTおよびLPRTコマンドを無効にします。

例:
curl --disable-eprt ftp://example.com/
-disable-epsv パッシブFTP転送のEPSVを無効にします。

例:
curl --disable-epsv ftp://example.com/
-q、-disable curlrc構成ファイルの読み取りを無効にします。

curl -q https://example.com
-disallow-username-in-url ユーザー名を含むURLが指定されている場合は終了します。

例:
curl --disallow-username-in-url https://example.com
-dns-interface 発信DNS要求のインターフェースを指定します。

例:
curl --dns-interface eth0 https://example.com
-dns-ipv4-addr
DNS要求の送信元となるIPv4アドレスを指定します。

例:
curl --dns-ipv4-addr 10.1.2.3 https://example.com
-dns-ipv6-addr
DNS要求の送信元となるIPv6アドレスを指定します。

例:
curl --dns-ipv6-addr 2a04:4e42 ::561 https://example.com
-dns-servers DNSサーバーの独自のリストを指定します。

例:
curl --dns-servers 192.168.0.1,192.168.0.2 https://example.com
-doh-cert-status -cert-status DNS-over-HTTPSの場合。

例:
curl --doh-cert-status --doh-url https://doh.server https://example.com
-doh-insecure -k -安全でない DoHの場合。

例:
curl --doh-insecure --doh-url https://doh.server https://example.com
-doh-url ホスト名解決用のDoHサーバーを指定します。

例:
curl --doh-url https://doh.server https://example.com
-D、-dump-header プロトコルヘッダーを書き込むためのファイルを指定します。

例:
curl --dump-header store.txt https://example.com
-egd-file EGDソケットのパスを指定します。

例:
curl --egd-file / path / here https://example.com
-engine OpenSSL暗号化エンジンを指定します。

例:
curl --engineflavor https://example.com
-etag-compare ファイルからのETagの読み取りを要求します。

例:
curl --etag-compare etag.txt https://example.com
-etag-save HTTPETagをファイルに保存します。

例:
curl --etag-save etag.txt https://example.com
-expect100-timeout 100-continue応答の最大待機時間。

例:
curl --expect100-timeout2.5-Tファイルhttps://example.com
-fail-early 転送で最初のエラーを検出したら、curlに失敗して終了するように指示します。

例:
curl --fail-early https://example.com https://two.example
-fail-with-body サーバーがコード400以上のエラーを返した場合、curlはコンテンツを保存し、エラー22を返します。

例:
curl --fail-with-body https://example.com
-f、-fail サーバーがエラーを返した場合、curlはサイレントに失敗し、エラー22を返します。

例:
curl --fail https://example.com
-false-start TLSハンドシェイクで不正スタートを使用します。

例:
curl --false-start https://example.com
-form-string -Fに類似 -form 、ただし、値の文字列は文字どおりに処理されます。

例:
curl --form-string "data" https://example.com
-F、-form 送信を使用してフォームをエミュレートします 押されたボタン。 @ signは、コンテンツを強制的にファイルにします。 < signは、ファイルのコンテンツ部分のみを抽出します。

例:
curl --form "name =curl" --form "[email protected]" https://example.com
-ftp-account FTPサーバーのアカウントデータを指定します。

例:
curl --ftp-account "account_data" ftp://example.com/
-ftp-alternative-to-user ユーザー名とパスワードの認証が失敗した場合に送信するコマンドを指定します。

例:
curl --ftp-alternative-to-user "U53r" ftp://example.com
-ftp-create-dirs 指定されたディレクトリが存在しない場合、curlはそれを作成しようとします。

例:
curl --ftp-create-dirs -T file ftp://example.com/dirs/one/file
-ftp-method FTP経由でファイルを取得するために使用する方法を指定します。使用可能なメソッドはmulticwd nocwd 、および singlecwd

例:
curl --ftp-method multicwd ftp://example.com/dir1/dir2/file
-ftp-pasv パッシブデータ接続モードを使用します。

例:
curl --ftp-pasv ftp://example.com/
-P、-ftp-port<アドレス> FTP接続のデフォルトの役割を逆にします。

例:
curl -P eth0 ftp:/example.com
-ftp-pret PASV/EPSVの前にPRETコマンドを送信します。

例:
curl --ftp-pret ftp://example.com/
-ftp-skip-pasv-ip サーバーによって提案されたIPアドレスを使用しないでください。 curlは制御接続IPを使用します。

例:
curl --ftp-skip-pasv-ip ftp://example.com/
--ftp-ssl-ccc-mode<アクティブ/パッシブ> クリアコマンドチャネル(CCC)モードを設定します。

例:
curl --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/
-ftp-ssl-ccc 認証が完了すると、SSL / TLSレイヤーが削除され、暗号化されていない通信が可能になります。

例:
curl --ftp-ssl-ccc ftps://example.com/
-ftp-ssl-control ログインにSSL/TLSを使用し、データ転送の開始時に暗号化を停止します。

例:
curl --ftp-ssl-control ftp://example.com
-G、-get POSTの代わりにHTTPGETリクエストを使用します。

例:
curl --get -d "tool =curl" -d "age =old" https://example.com
-g、-globoff URLグロブパーサーを無効にします。

例:
curl -g "https://example.com/ {[]}}}}"
-happy-eyeballs-timeout-ms デュアルスタックホストに接続するには、HappyEyeballsアルゴリズムを使用します。

例:
curl --happy-eyeballs-timeout-ms 500 https://example.com
-haproxy-protocol HAProxyPROXYプロトコルv1ヘッダーを使用します。

例:
curl --haproxy-protocol https://example.com
-I、-head ヘッダーのみを取得します。

例:
curl -I https://example.com
-H、-header
HTTPリクエストで送信される追加のヘッダーを指定します。

例:
curl -H "X-First-Name:Joe" https://example.com
-h、--help 特定のカテゴリのヘルプを参照してください。 すべて 使用可能なすべてのオプションを一覧表示します。

例:
curl --help all
-hostpubmd5 32桁の16進文字列を渡します。

例:
curl --hostpubmd5 e5c1c49020640a5ab0f2034854c321a8 sftp://example.com/
-hsts<ファイル名> HSTSを有効にします。

例:
curl --hsts cache.txt https://example.com
-http0.9 HTTPバージョン0.9の応答を受け入れます。

例:
curl --http0.9 https://example.com
-0、-http1.0 HTTPバージョン1.0を使用します。

例:
curl --http1.0 https://example.com
-http1.1 HTTPバージョン1.1を使用します。

例:
curl --http1.1 https://example.com
-http2-prior-knowledge HTTPバージョン2.0を使用します。サーバーがこのHTTPバージョンをサポートしていることがわかっている場合は、このオプションを使用してください。

例:
curl --http2-prior-knowledge https://example.com
-http2 HTTPバージョン2.0の使用を試みます。

例:
curl --http2 https://example.com
-http3 HTTPバージョン3.0を使用します。これは実験的なオプションです。

例:
curl --http3 https://example.com
-ignore-content-length Content-Lengthヘッダーを無視します。

例:
curl --ignore-content-length https://example.com
-i、-include 出力にHTTP応答ヘッダーを含める必要があることを指定します。

例:
curl -i https://example.com
-k、-insecure curlが安全でない接続で機能することを許可します。

例:
curl --insecure https://example.com
-interface アクションを実行するためのインターフェースを指定します。

例:
curl --interface eth0 https://example.com
-4、-ipv4 名前をIPv4アドレスにのみ解決します。

例:
curl --ipv4 https://example.com
-6、-ipv6 名前をIPv6アドレスにのみ解決します。

例:
curl --ipv6 https://example.com
-j、-junk-session-cookies セッションCookieを破棄します。

例:
curl --junk-session-cookies -b Cookies.txt https://example.com
-keepalive-time キープアライブプローブを送信する前の接続のアイドル時間を指定します。

例:
curl --keepalive-time 30 https://example.com
-key-type 秘密鍵の種類を指定します。使用可能なタイプはPEM (デフォルト)、 DER 、および ENG

例:
curl --key-type ENG --key here https://example.com
-key 秘密鍵を含むファイルを指定します。

例:
curl --certcertificate --key here https://example.com
-krb Kerberos認証を有効にして使用します。利用可能なレベルはclear 安全 機密 、およびプライベート (デフォルト)。

例:
curl --krb clear ftp://example.com/
-libcurl 指定されたコマンドライン操作のCソースコードを取得します。

例:
curl --libcurl client.c https://example.com
-limit-rate 最大アップロードおよびダウンロード転送速度を指定します。

例:
curl --limit-rate 100K https://example.com
-l、-list-only 名前のみの表示を強制します。

例:
curl --list-only ftp://example.com/dir/
-local-port 接続に使用するポート番号を指定します。

例:
curl --local-port 1000-3000 https://example.com
-location-trusted -Lに類似 -場所 、ただし、名前とパスワードをすべてのリダイレクトに送信できます。

例:
curl --location-trusted -u user:pass https://example.com
-L、-location curlがリダイレクトに従うことを許可します。

例:
curl -L https://example.com
-login-options 電子メールサーバー認証のログインオプションを指定します。

例:
curl --login-options'AUTH =*'imap://example.com
-mail-auth
IDとして単一のアドレスを提供します。

例:
curl --mail-auth [email protected] -T mail smtp://example.com/
-mail-from
単一の「差出人」アドレスを提供します。

例:
curl --mail-from [email protected] -T mail smtp://example.com/
-mail-rcpt-allowfails 受信者の1人が失敗した場合に、curlがSMTP会話を続行できるようにします。

例:
curl --mail-rcpt-allowfails --mail-rcpt[メール保護]smtp://example.com
-mail-rcpt
単一の「宛先」アドレスを指定します。

例:
curl --mail-rcpt[メール保護]smtp://example.com
-M、-manual カールのマニュアルを読んでください。

例:
curl --manual
-max-filesize ダウンロードするファイルの最大サイズを指定します。
例:
curl --max-filesize 500K https://example.com
-max-redirs -locationの場合のリダイレクトの最大数を指定します アクティブです。

例:
curl --max-redirs 3 --location https://example.com
-m、-max-time<小数秒> 操作の最大時間を指定します。

例:
curl --max-time 5.52 https://example.com
-metalink メタリンクリソースを指定します。このオプションは、curlの最新バージョンでは無効になっています。

例:
curl --metalink file https://example.com
-交渉 SPNEGO認証を有効にします。

例:
curl --negotiate -u:https://example.com
-netrc-file -nのように -netrc 、ただし、使用するファイルを指定できます。

例:
curl --netrc-file netrc https://example.com
-netrc-optional -nのように -netrc 、ただし、netrcの使用はオプションです。

例:
curl --netrc-optional https://example.com
-n、-netrc netrcファイルでログイン情報を検索します。

例:
curl --netrc https://example.com
-:、-next このオプションを使用して、URLリクエストを分離します。

例:
curl -I https://example.com --next https://example.net/
-no-alpn ALPNTLS拡張を無効にします。

例:
curl --no-alpn https://example.com
-N、-no-buffer 出力ストリームバッファを無効にします。

例:
curl --no-buffer https://example.com
-no-keepalive キープアライブメッセージを無効にします。

例:
curl --no-keepalive https://example.com
-no-npn NPNTLS拡張を無効にします。

例:
curl --no-npn https://example.com
-no-progress-meter プログレスバーを無効にしますが、その他のメッセージは表示します。

例:
curl --no-progress-meter -o store https://example.com
-no-sessionid SSLセッションIDのキャッシュを無効にします。

例:
curl --no-sessionid https://example.com
-noproxy プロキシを使用してはならないホストを一覧表示します。

例:
curl --noproxy "www.example" https://example.com
-ntlm-wb -ntlmのように 、だけでなく、認証をntlmauthに渡します。

例:
curl --ntlm-wb -u user:password https://example.com
-ntlm NTLM認証を有効にします。

例:
curl --ntlm -u user:password https://example.com
-oauth2-bearer OAUTH2.0のベアラートークンを提供します。

例:
curl --oauth2-bearer "mF_9.B5f-4.1JqM" https://example.com
-output-dir 出力ファイルディレクトリを指定します。

例:
curl --output-dir "tmp" -O https://example.com
-o、-output 出力をファイルに保存します。出力はstdoutに表示されません。

例:
curl -o file https://example.com -o file2 https://example.net
-parallel-immediate 新しい接続または多重化されたストリームを待つよりも並列接続を優先します。

例:
curl --parallel-immediate -Z https://example.com -o file1 https://example.com -o file2
-parallel-max 並列接続の最大数を指定します。

例:
curl --parallel-max 100 -Z https://example.com ftp://example.com/
-Z、-parallel 転送を並行して実行します。

例:
curl --parallel https://example.com -o file1 https://example.com -o file2
--pass 秘密鍵のパスフレーズを指定します。

例:
curl --pass secret --key file https://example.com
-path-as-is カールがマージされないようにする/./ および/../ シーケンス。

例:
curl --path-as-is https://example.com/../../etc/passwd
- -pinnedpubkey curlが使用する公開鍵を指定します。

例:
curl --pinnedpubkey keyfile https://example.com
-post301 301リダイレクト後にcurlがPOSTからGETリクエストに変換しないようにします。

例:
curl --post301 --location -d "data" https://example.com
-post302 302リダイレクト後にcurlがPOSTからGETリクエストに変換しないようにします。

curl --post302 --location -d "data" https://example.com
-post303 303リダイレクト後にcurlがPOSTからGETリクエストに変換しないようにします。

例:
curl --post303 --location -d "data" https://example.com
-preproxy [protocol://] host [:port] SOCKSプロキシをプレプロキシとして使用します。

例:
curl --preproxy socks5://proxy.example -x http://http.example https://example.com
-#、-progress-bar シンプルなプログレスバーを使用します。

例:
curl-#-O https://example.com
-proto-default スキーム名のないURLにどのプロトコルcurlを使用するかを指定します。

例:
curl --proto-default https ftp.example.com
-proto-redir curlがリダイレクトで使用するプロトコルを指定します。

例:
curl --proto-redir =http、https https://example.com
-proto curlが転送に使用するプロトコルを指定します。

例:
curl --proto =http、https、sftp https://example.com
-proxy-anyauth Curlは適切な認証方法を選択する必要があります。

例:
curl --proxy-anyauth --proxy-user user:passwd -x proxy https://example.com
-proxy-basic プロキシとの通信にはHTTPBasicを使用します。

例:
curl --proxy-basic --proxy-user user:passwd -x proxy https://example.com
-proxy-cacert --cacert for HTTPS proxies.

例:
curl --proxy-cacert CA-file.txt -x https://proxy https://example.com
--proxy-capath --capath for HTTPS proxies.

例:
curl --proxy-capath /local/directory -x https://proxy https://example.com
--proxy-cert-type --cert-type for HTTPS proxies.

例:
curl --proxy-cert-type PEM --proxy-cert file -x https://proxy https://example.com
--proxy-cert -E , --cert for HTTPS proxies.

例:
curl --proxy-cert file -x https://proxy https://example.com
--proxy-ciphers --ciphers for HTTPS proxies.

curl --proxy-ciphers ECDHE-ECDSA-AES256-CCM8 -x https://proxy https://example.com
--proxy-crlfile --crlfile for HTTPS proxies.

例:
curl --proxy-crlfile rejects.txt -x https://proxy https://example.com
--proxy-digest Use HTTP Digest authentication with a proxy.

例:
curl --proxy-digest --proxy-user user:passwd -x proxy https://example.com
--proxy-header
-H , --header for proxy communication.

例:
curl --proxy-header "Host:" -x http://proxy https://example.com
--proxy-insecure -k , --insecure for HTTPS proxies.

例:
curl --proxy-insecure -x https://proxy https://example.com
--proxy-key-type --key-type for HTTPS proxies.

例:
curl --proxy-key-type DER --proxy-key here -x https://proxy https://example.com
--proxy-key --key for HTTPS proxies.

例:
curl --proxy-key here -x https://proxy https://example.com
--proxy-negotiate --negotiate for proxy communication.

例:
curl --proxy-negotiate --proxy-user user:passwd -x proxy https://example.com
--proxy-ntlm Use HTTP NTLM authentication with a proxy.

例:
curl --proxy-ntlm --proxy-user user:passwd -x http://proxy https://example.com
--proxy-pass --pass for HTTPS proxies.

例:
curl --proxy-pass secret --proxy-key here -x https://proxy https://example.com
--proxy-pinnedpubkey Specify the public key for proxy verification.

例:
curl --proxy-pinnedpubkey keyfile https://example.com
--proxy-service-name Specify the service name for proxy communciation.

例:
curl --proxy-service-name "shrubbery" -x proxy https://example.com
--proxy-ssl-allow-beast --ssl-allow-beast for HTTPS proxies.

例:
curl --proxy-ssl-allow-beast -x https://proxy https://example.com
--proxy-ssl-auto-client-cert --ssl-auto-client-cert for HTTPS proxies.

例:
curl --proxy-ssl-auto-client-cert -x https://proxy https://example.com
--proxy-tls13-ciphers Specifies the list of cipher suites to use in negotiating TLS 1.3 for proxies.

例:
curl --proxy-tls13-ciphers TLS_AES_128_GCM_SHA256 -x proxy https://example.com
--proxy-tlsauthtype --tlsauthtype for HTTPS proxies.

例:
curl --proxy-tlsauthtype SRP -x https://proxy https://example.com
--proxy-tlspassword --tlspassword for HTTPS proxies.

例:
curl --proxy-tlspassword passwd -x https://proxy https://example.com
--proxy-tlsuser --tlsuser for HTTPS proxies.

例:
curl --proxy-tlsuser smith -x https://proxy https://example.com
--proxy-tlsv1 -1 , --tlsv1 for HTTPS proxies.

例:
curl --proxy-tlsv1 -x https://proxy https://example.com
-U, --proxy-user Specify the username and password for authenticating with a proxy.

例:
curl --proxy-user name:pwd -x proxy https://example.com
-x, --proxy [protocol://]host[:port] Specify a proxy to use.

例:
curl --proxy http://proxy.example https://example.com
--proxy1.0 Specify a HTTP 1.0 proxy to use.

例:
curl --proxy1.0 -x http://proxy https://example.com
-p, --proxytunnel Create a proxy tunnel.

例:
curl --proxytunnel -x http://proxy https://example.com
--pubkey Provide a file containing a public key.

例:
curl --pubkey file.pub sftp://example.com/
-Q, --quote Send a command to a FTP or SFTP server, to be executed before the transfer.

例:
curl --quote "rm file" ftp://example.com/foo
--random-file Specify a file containing random data. This file will be used for seeding the random engine.

例:
curl --random-file rubbish https://example.com
-r, --range Obtain a range of bytes.

例:
curl --range 40-80 https://example.com
--raw Disable HTTP content decoding and obtain raw data.

例:
curl --raw https://example.com
-e, --referer Send Referrer Page information.

例:
curl --referer "https://test.example" https://example.com
-J, --remote-header-name Use header name specified by the server instead of obtaining it from the URL.

例:
curl -OJ https://example.com/file
--remote-name-all Apply the -O , --remote-name option to all the URLs.

例:
curl --remote-name-all ftp://example.com/file1 ftp://example.com/file2
-O, --remote-name Specify that the local file should have the name of the remote file that was downloaded.

例:
curl -O https://example.com/filename
-R, --remote-time Specify that the local file should have the timestamp of the remote file that was downloaded.

例:
curl --remote-time -o foo https://example.com
--request-target Specify an alternative target path.

例:
curl --request-target "*" -X OPTIONS https://example.com
-X, --request Specify a request method for communication with the server.

例:
curl -X "DELETE" https://example.com
--resolve <[+]host:port:addr[,addr]...> Specify a custom address for a host/port.

例:
curl --resolve example.com:443:127.0.0.1 https://example.com
--retry-all-errors Force retrying on all errors.

例:
curl --retry-all-errors https://example.com
--retry-connrefused Add ECONNREFUSED to the list of errors that are eligible for --retry

例:
curl --retry-connrefused --retry https://example.com
--retry-delay Specify the amount of time between retries.

例:
curl --retry-delay 5 --retry https://example.com
--retry-max-time Specify the maximum amount of time for --retry attempts.

例:
curl --retry-max-time 30 --retry 10 https://example.com
--retry Specify the number of retries after curl encounters and error.

例:
curl --retry 7 https://example.com
--sasl-authzid Specify an additional authentication identity for SASL PLAIN authentication.

例:
curl --sasl-authzid zid imap://example.com/
--sasl-ir Enable initial response during SASL authentication.

例:
curl --sasl-ir imap://example.com/
--service-name Specify the SPNEGO service name.

例:
curl --service-name sockd/server https://example.com
-S, --show-error Show an error message event with the -s , --silent option enabled.

例:
curl --show-error --silent https://example.com
-s, --silent Turn on the silent mode. This option mutes curl.

例:
curl -s https://example.com
--socks4 Specify a SOCKS4 proxy.

例:
curl --socks4 hostname:4096 https://example.com
--socks4a Specify a SOCKS4a proxy.

例:
curl --socks4a hostname:4096 https://example.com
--socks5-basic Use the basic authentication method (username/password) with a SOCKS5 proxy.

例:
curl --socks5-basic --socks5 hostname:4096 https://example.com
--socks5-gssapi-nec Allow protection mode negotiation to be unprotected.

例:
curl --socks5-gssapi-nec --socks5 hostname:4096 https://example.com
--socks5-gssapi-service Change the name of a socks server.

例:
curl --socks5-gssapi-service sockd --socks5 hostname:4096 https://example.com
--socks5-gssapi Use GSS-API authentication with a SOCKS5 proxy.

例:
curl --socks5-gssapi --socks5 hostname:4096 https://example.com
--socks5-hostname Specify the SOCKS5 proxy to use.

例:
curl --socks5-hostname proxy.example:7000 https://example.com
--socks5 Specify the SOCKS5 proxy to use. The hostname is resolved locally.

例:
curl --socks5 proxy.example:7000 https://example.com
-Y, --speed-limit Set the lower limit for the download speed.

例:
curl --speed-limit 300 --speed-time 10 https://example.com
-y, --speed-time Set the time period for the speed limit measurement.

例:
curl --speed-limit 300 --speed-time 10 https://example.com
--ssl-allow-beast Tell curl to ignore the BEAST security flaw in the SSL3 and TLS1.0 protocols.

例:
curl --ssl-allow-beast https://example.com
--ssl-auto-client-cert Obtain and use a client certificate automatically.

例:
curl --ssl-auto-client-cert https://example.com
--ssl-no-revoke Do not check for certificate revocation.

例:
curl --ssl-no-revoke https://example.com
--ssl-reqd Require SSL/TLS.

例:
curl --ssl-reqd ftp://example.com
--ssl-revoke-best-effort Ignore certificate revocation checks if they failed because of missing distribution points.

例:
curl --ssl-revoke-best-effort https://example.com
--ssl Attempt to use SSL.

例:
curl --ssl pop3://example.com/
-2, --sslv2 Use SSLv2. Newer curl versions ignore this request due to security concerns with SSLv2.

例:
curl --sslv2 https://example.com
-3, --sslv3 Use SSLv3. Newer curl versions ignore this request due to security concerns with SSLv3.

例:
curl --sslv3 https://example.com
--stderr Output stderr to a file. The - symbol tells curl to output stderr to stdout.

例:
curl --stderr output.txt https://example.com
--styled-output Enable bold fonts for HTTP header terminal output.

curl --styled-output -I https://example.com
--suppress-connect-headers Prevent curl from outputting CONNECT headers.

例:
curl --suppress-connect-headers --include -x proxy https://example.com
--tcp-fastopen Enable TCP Fast Open.

例:
curl --tcp-fastopen https://example.com
--tcp-nodelay Enable TCP_NODELAY.

例:
curl --tcp-nodelay https://example.com
-t, --telnet-option Pass the TTYPE , XDISPLOC , and NEW_ENV options to the telnet protocol.

例:
curl -t TTYPE=vt100 telnet://example.com/
--tftp-blksize Set the value of TFTP BLKSIZE. Must be a value larger than 512.

例:
curl --tftp-blksize 1024 tftp://example.com/file
--tftp-no-options Prevents curl from sending requests for TFTP options.

例:
curl --tftp-no-options tftp://192.168.0.1/
-z, --time-cond Request a document that was modified after a certain date and time. For documents modified before the time, prefix the date expression with a dash.

例:
curl -z "Wed 01 Sep 2021 12:18:00" https://example.com
--tls-max Specify the newest TLS version that is supported.

例:
curl --tls-max 1.2 https://example.com
--tls13-ciphers Specifies the list of cipher suites to use in negotiating TLS 1.3

例:
curl --tls13-ciphers TLS_AES_128_GCM_SHA256 https://example.com
--tlsauthtype Specify the TLS authentication type.

例:
curl --tlsauthtype SRP https://example.com
--tlspassword Specify the TLS password.

例:
curl --tlspassword pwd --tlsuser user https://example.com
--tlsuser Specify the TLS username.

例:
curl --tlspassword pwd --tlsuser user https://example.com
--tlsv1.0 Tell curl to use TLS1.0 or newer.

例:
curl --tlsv1.0 https://example.com
--tlsv1.1 Tell curl to use TLS1.1 or newer.

例:
curl --tlsv1.1 https://example.com
--tlsv1.2 Tell curl to use TLS1.2 or newer.

例:
curl --tlsv1.2 https://example.com
--tlsv1.3 Tell curl to use TLS1.3 or newer.

例:
curl --tlsv1.3 https://example.com
-1, --tlsv1 Specify that curl should use at least 1.x version of TLS.

例:
curl --tlsv1 https://example.com
--tr-encoding Ask for a compressed Transfer-Encoding response.

例:
curl --tr-encoding https://example.com
--trace-ascii Enable a full trace dump to a file. Eliminates the hex part and shows only ASCII.

例:
curl --trace-ascii log.txt https://example.com
--trace-time Require a time stamp on each trace or verbose line.

例:
curl --trace-time --trace-ascii output https://example.com
--trace Enable a full trace dump to a file.

例:
curl --trace log.txt https://example.com
--unix-socket Specify a Unix socket path.

例:
curl --unix-socket socket-path https://example.com
-T, --upload-file Upload a file to the URL.

例:
curl -T "img[1-1000].png" ftp://ftp.example.com/
--url Provide a URL to be fetched.

例:
curl --url https://example.com
-B, --use-ascii Enable ASCII transfer.

例:
curl -B ftp://example.com/README
-A, --user-agent Specify the user agent name.

例:
curl -A "Agent 007" https://example.com
-u, --user Provide the username and password for authentication.

例:
curl -u user:secret https://example.com
-v, --verbose Tell curl to be verbose.

例:
curl --verbose https://example.com
-V、-version See the installed versions of curl and libcurl.

例:
curl --version
-w, --write-out Tell curl to show information about the completed transfer on stdout.

例:
curl -w '%{http_code}\n' https://example.com
--xattr Store file metadata in file attributes.

例:
curl --xattr -o storage https://example.com

For comprehensive descriptions of the options, execute the curl --manual command in the terminal.


Ubuntu
  1. Linuxのshutdownコマンドを例で説明

  2. LinuxでのJQコマンドと例

  3. LinuxのProcinfoコマンドを例で説明

  1. 例を含むLinuxソースコマンド

  2. 例を含むwcLinuxコマンド

  3. Linux Tracerouteコマンド、例を使用して説明

  1. Linuxカットコマンドを6つの例で説明

  2. LinuxでのCurlコマンドと例

  3. Linuxipコマンドと例