Windows の cURL は、環境や使い方によって機能などが異なり、 Mac や Linux 向けに解説されている curl の操作と異なる場合があります。
今回は、こういったトラブルを回避するために Linux などで使われている本物の cURL を Windows11 にインストールしてみました。
まえがき
PowerShell
で curl
をそのまま叩けばいいじゃん?
…と思っていた時期が私にもありました。
ただ cURL を使いたいだけなのにドハマったので、改めて整理してみました。
色々な cURL
cURL をインストールする前に色々と存在する cURL の違いなど簡単に紹介します。
Invoke-WebRequest
1つ目は Invoke-WebRequest
です。
Windows に標準で搭載されている Windows PowerShell
では、 curl
コマンドを叩いても Invoke-WebRequest
が起動するようになっています。
これは、 curl
が Invoke-WebRequest
にエイリアスされているためです。
試しに Windows PowerShell
で curl
のエイリアスを確認してみると、この様になっています。
そして困ったことに、この Invoke-WebRequest
と curl
とでは、コマンドが全く異なります。
curl.exe
2つ目は curl.exe
です。
Windows には、上記の Invoke-WebRequest
とは別に curl.exe
も実装されいます。
curl.exe
は、 curl
とほぼ同じように操作できますが、パラメータや扱えるプロトコルなどで異なる部分が存在します。
また、コマンドを実行する際は curl
ではなく curl.exe
と入力する必要があります。
curl.exe https://vantiq.com
パラメータが微妙に異なるなど、地味に使いづらいやつです。
Windows PowerShell
3つ目は Windows PowerShell
です。
Windows PowerShell
自体は cURL
ではないのですが、 cURL
に関わってくるので紹介します。
Windows では PowerShell
にも違いがあります。
Windows が標準で搭載している PowerShell
は Windows PowerShell
と呼ばれるもので、最新版の PowerShell
とは機能面などで大幅に異なっています。
そして、上記でも説明した通り Windows PowerShell
では curl
が Invoke-WebRequest
のエイリアスとして設定されています。
一方、 PowerShell
の場合は、エイリアスが設定されていません。
cURL のインストール方法
cURL はインストーラーが用意されていないため、手作業でインストールする必要があります。
cURL のダウンロード
下記のリンクから cURL をダウンロードします。
今回は Windows 64-bit 7.87.0 binary
をダウンロードしました。
インストール
ダウンロードしたzipファイルを解凍し、任意のフォルダに展開します。
今回は C:\Program Files\curl
フォルダに展開しました。
Path の設定
curl
フォルダ内の bin
フォルダに Path
を通します。
今回は C:\Program Files\curl\bin
に Path
を通しました。
以上で cURL
のインストールは完了です。