找不到与命令“ dotnet-script”匹配的可执行文件

时间:2018-12-03 20:24:49

标签: c# .net powershell dotnet-tool

为什么dotnet script在安装后无法在PowerShell中运行?安装后,我关闭并重新打开了所有PowerShell实例。

我运行dotnet script init时PowerShell抛出此错误:

  

找不到与命令“ dotnet-script”匹配的可执行文件

编辑:

  • dotnet script确实在cmd.exe中运行
  • dotnet中存在.dotnet\toolsPATH文件夹

3 个答案:

答案 0 :(得分:1)

我解决了:

  1. 删除旧的PATH条目,以防PATH太大(source
  2. 重新启动计算机,因为即使关闭/重新打开所有PowerShell实例(source),PowerShell的$env:PATH也没有更新

答案 1 :(得分:1)

虽然我确信your own solution会有所帮助,但值得深入研究:

  

PATH中存在dotnet.dotnet\tools文件夹

要产生您的症状,前者必须为真,但后者不能为真

发出错误消息的是dotnet.exe(暗示dotnet.exe本身的确是在PATH中)。

该错误消息表明找不到名为script的工具,这意味着在PATH中找不到名为dotnet-script.exe的可执行文件,因为这是dotnet的可执行文件名称。调用dotnet script时在幕后构造。

使用正确设置的PATH(当然,还要安装dotnet-script),应通过PATH中的dotnet-script.exe目录找到$HOME\.dotnet\tools

$HOME\.dotnet\tools是作为注册表中特定于用户的PATH添加的一部分存储的条目,并且您的PowerShell会话似乎尚未选择该条目-可能由于答案中提到的原因而发生。

答案 2 :(得分:0)

最有可能包含dotnet的文件夹不在您的PATH环境变量中。将其添加到该变量。

还请注意,如果同时安装x86和x64版本,则dotnet将安装在两个位置,并且如果两个都以PATH结尾,则只会选择一个。更新时,这可能导致非常奇怪的结果!