Windows 10 の CMD と Powershell の両方で奇妙な問題が発生し、困っています。無関係なスクリプトが実行中に失敗しcurl
、調査したところ、CMD と Powershell の問題のようです。
CMD で実行するとcurl
、次のエラーが発生します。
C:\Users\****>curl
Cannot find file at '..\\lib\curl\tools\curl-8.6.0_1-win64-mingw\bin\curl.exe' (C:\WINDOWS\lib\curl\tools\curl-8.6.0_1-win64-mingw\bin\curl.exe). This usually indicates a missing or moved file.
PowerShell でも同じことが起こりますが、その場合はcurl.exe
(plain curl
aliases to Invoke-WebRequest
) と記述する必要があります。
このパスは存在しません。PATH (またはその他の環境変数) にも存在せず、CMD/Powershell がなぜそこを探そうとしているのかわかりません。PATH の先頭に(実際の場所)curl
を入れてみましたが、うまくいきませんでした。C:\Windows\System32
curl
紛らわしいことに、where
問題なく動作し、何もおかしなことは表示されません。
C:\Users\****>where curl
C:\Windows\System32\curl.exe
ご協力いただければ幸いです。さらに情報を提供する必要がある場合はお知らせください。
答え1
コメントで指摘されているように、確かに curl は正しい場所で実行されていますが、実行ファイルは Chocolatey シムであり、別のものに委ねようとします。
curl
何らかの理由で、別の問題を解決するために、内部をそのような .exe に手動で置き換えていましたSystem32
(馬鹿げたことに聞こえるかもしれませんが、わかっています)。実際の実行可能ファイルに再度置き換えたところcurl
、今では完璧に動作します。