PowerShell は curl.exe の空のプロキシ引数を落とすことがある
curl の空のプロキシオプションが cmd と異なる動作をする場合、PowerShell のネイティブ引数渡しを考慮してください。
curl --proxy "" は、curl が空の引数を受け取ることに依存しています。このコマンドは Windows のシェルによって動作が異なることがあります。従来の Windows PowerShell のネイティブコマンド受け渡しは、PowerShell 7.3 で導入された新しいモードと同じようには空の文字列を保持しないためです。
空の値が失われると、次の引数がプロキシの値として消費される可能性があります。これはネットワーク上の判断よりも前の、コマンドライン解析の問題です。
直接 curl を実行する場合は、空でないバイパス引数を使うと意図を渡しやすくなります。
curl.exe --noproxy '*' https://example.com/
curl.exe を意識して使ってください。Windows PowerShell は curl を別のコマンドのエイリアスとして解決することがあります。引用符で囲んだアスタリスクは、curl のすべてのホストに対するバイパス値として渡されます。
より複雑なネイティブ引数が必要なスクリプトでは、PowerShell のバージョンとそのネイティブ引数渡しモードを確認してください。cmd の例をそのままコピーしても、curl が同じ引数リストを受け取ったことにはなりません。