CURL
cURL(カール[1])は、さまざまなプロトコルを用いてデータを転送するライブラリとコマンドラインツールを提供するプロジェクトである。cURLプロジェクトは libcurl と curl の2つの成果を生んでいる。[2] libcurllibcurlとはフリーで使いやすいクライアントサイドURL転送ライブラリであり、2013年10月現在、DICT、FILE、FTP、FTPS、GOPHER、HTTP、HTTPS、LDAP、LDAPS、SCP、SFTP、TELNET、TFTPのスキームをサポートしている[3]。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は複数のプラットフォームで同じようにビルド、稼動させることができる。そのプラットフォームには以下のものを含む[3]。 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のためのバインディングが提供されている。 curlcurlはURLシンタックスを用いてファイルを送信または受信するコマンドラインツールである。 curlはlibcurlを使うため、幅広いインターネットプロトコルをサポートする。サポートしているプロトコル(より正確にはスキーム)は前項参照。 Daniel Stenbergは1997年にコマンドラインインタフェースでhttp、ftp、gopherその他多くのプロトコルでファイルを転送するための方法としてcurlを書き始めた。その他複数の人々がプロジェクトに重要な貢献をしている。 curlはMIT Licenseに基づき配布されている。curlは自由ソフトウェアである。 Microsoft Windows では、Windows 10 version 1803 以降に標準搭載されている[4]。 curlのコマンドラインからの利用の例curlの基本的な利用法は、単にコマンドラインでcurlの後に取得する出力のURLをタイプすることである。 example.comのホームページを取得するには、以下のようにタイプすればよい。:
curlはデフォルトでは、取得した出力をシステムによって特定された標準出力に表示するようになっている(通常はターミナル)。 したがって上記のコマンドを実行すると、ほとんどのシステムではwww.example.comのソースコードがターミナルに表示される。 curlは、以下のように -o フラグを用いることで、取得した出力をファイルに書き出すことができる。
これはwww.example.comのソースコードをexample.htmlと言う名前のファイルに保存する。 出力を保存するとき、curlは出力のうちどこまでがダウンロードされたかを表すプログレスバーを表示する。注意:curlは出力をターミナルに表示するときにはプログレスバーを表示しない。プログレスバーが出力の表示を妨げる可能性があるからである。 出力をオリジナルのシステムと同じ名前のファイルに保存するには、-O フラグを用いる。
サポートされているプロトコルその他にサポートされているフォーマットなどは、以下のものを含む。
作者及び著作権Daniel Stenbergは600人以上の助けによりcurlを書いた[5]。著名な貢献者は Dan Fandrich、Yang Tse等である。配布物の中の curlの著作権はDaniel Stenbergに所属する。2019年2月にDaniel StenbergがwolfSSLに加わり、wolfSSLがcurlのサポートとコンサルティングを開始した。 脚注
関連項目外部リンク |