CURL

cURL（カール）は、さまざまなプロトコルを用いてデータを転送するライブラリとコマンドラインツールを提供するプロジェクトである。cURLプロジェクトは  libcurl と curl の2つの成果を生んでいる。

 libcurl 
libcurlとはフリーで使いやすいクライアントサイドURL転送ライブラリであり、2013年10月現在、DICT、FILE、FTP、FTPS、GOPHER、HTTP、HTTPS、LDAP、LDAPS、SCP、SFTP、TELNET、TFTPのスキームをサポートしている配布物件のdocs/FAQファイルによる。。2010年2月9日のバージョン7.20.0以降はIMAP、POP3、POP3S、SMTP、SMTPS、RTSPもサポートしている。
libcurlはまたX.509証明書、HTTP POST、HTTP PUT、FTPアップロード、kerberos、HTTPのフォームによるアップロード、プロキシ、HTTPクッキー、ユーザーとパスワードによる認証、ファイル転送のレジューム（中断と再開）、HTTPプロキシトンネリングなどをサポートしている。

libcurlは移植性が高い。libcurlは複数のプラットフォームで同じようにビルド、稼動させることができる。そのプラットフォームには以下のものを含む。
Solaris、NetBSD、FreeBSD、OpenBSD、Darwin、HP-UX、IRIX、AIX、Tru64、Linux、UnixWare、GNU Hurd、Windows、Amiga、OS/2、BeOS、macOS、Ultrix、QNX、OpenVMS、RISC OS、NetWare、DOS、Symbian、OSF、Android、MINIX、IBM TPF等々。

libcurlはフリーであり、スレッドセーフであり、IPv6 コンパチブルである。機能は多く動作は速い。ソフトウェアプログラマはlibcurlを彼らのプログラムに組み込むことができる。40以上のプログラミング言語でlibcurlのためのバインディングが提供されている。

 curl 
curlはURLシンタックスを用いてファイルを送信または受信するコマンドラインツールである。

curlはlibcurlを使うため、幅広いインターネットプロトコルをサポートする。サポートしているプロトコル（より正確にはスキーム）は前項参照。

Daniel Stenbergは1997年にコマンドラインインタフェースでhttp、ftp、gopherその他多くのプロトコルでファイルを転送するための方法としてcurlを書き始めた。その他複数の人々がプロジェクトに重要な貢献をしている。
curlはMIT Licenseに基づき配布されている。curlは自由ソフトウェアである。

Microsoft Windows では、Windows 10 version 1803 以降に標準搭載されている。

 curlのコマンドラインからの利用の例 
curlの基本的な利用法は、単にコマンドラインでcurlの後に取得する出力のURLをタイプすることである。

example.comのホームページを取得するには、以下のようにタイプすればよい。:
 curl www.example.com

curlはデフォルトでは、取得した出力をシステムによって特定された標準出力に表示するようになっている（通常はターミナル）。 
したがって上記のコマンドを実行すると、ほとんどのシステムではwww.example.comのソースコードがターミナルに表示される。

curlは、以下のように -o フラグを用いることで、取得した出力をファイルに書き出すことができる。
 curl -o example.html www.example.com

これはwww.example.comのソースコードをexample.htmlと言う名前のファイルに保存する。 出力を保存するとき、curlは出力のうちどこまでがダウンロードされたかを表すプログレスバーを表示する。注意：curlは出力をターミナルに表示するときにはプログレスバーを表示しない。プログレスバーが出力の表示を妨げる可能性があるからである。

出力をオリジナルのシステムと同じ名前のファイルに保存するには、-O フラグを用いる。
 curl -O (URL)

 サポートされているプロトコル 

その他にサポートされているフォーマットなどは、以下のものを含む。
 X.509 証明書
 HTTP POST
 HTTP PUT
 FTP uploading
 Kerberos
 HTTPフォームによるアップロード
 プロキシ
 HTTPクッキー
 ユーザとパスワードによる認証 (HTTPのBasic, Digest, NTLM, GSS-Negotiate 及び FTPの Kerberos 4 認証)
 ファイル転送のレジューム
 HTTPプロキシトンネリング

 作者及び著作権 
Daniel Stenbergは600人以上の助けによりcurlを書いた。著名な貢献者は Dan Fandrich、Yang Tse等である。配布物の中のTHANKSファイルは（功績の大小にかかわらず）すべての貢献者の名前を挙げている。

curlの著作権はDaniel Stenbergに所属する。2019年2月にDaniel StenbergがwolfSSLに加わり、wolfSSLがcurlのサポートとコンサルティングを開始した。

 脚注 

 関連項目 
 GNU Wget
 lftp

 外部リンク 


 curl manual（英文）
 Comparison of cURL vs other open source download tools（英文）
 curl man page 日本語訳

Category:FTPクライアント
Category:オープンソースソフトウェア
Category:クロスプラットフォームのソフトウェア
Category:ダウンロードマネージャ
Category:ネットワークソフト
Category:1997年のソフトウェア
Category:Cでプログラムされた自由ソフトウェア