术语“Install-Module”不被识别为 cmdlet 名称

23

我正在按照安装 poshgit 的步骤进行操作。在此过程中,我运行了以下命令:

Install-Module posh-git

错误信息:

该项 'Install-Module'不被识别为cmdlet、函数、脚本文件或可执行程序的名称。请检查拼写,如果包含路径,请验证路径是否正确,然后重试。

我运行了 $PSVersionTable.PSVersion: 结果是2.0.-1.-1

那么,Install-Module 是一个插件吗?我应该如何运行这个命令?

2个回答

9
您是否已安装了PsGet?请查看通过PsGet安装部分。
接下来是手动安装说明
  1. 确认您的PowerShell版本为2.0或更高版本。可使用$PSVersionTable.PSVersion命令查询。

  2. 使用Get-ExecutionPolicy命令确认脚本执行权限为“RemoteSigned”或“Unrestricted”。如果未启用脚本,请以管理员身份运行PowerShell,并调用Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Confirm

  3. 确认已在PowerShell中设置好git别名或将%ProgramFiles(x86)%\Git\cmd(如果您的系统还是32位则为%ProgramFiles%\Git\cmd)添加到环境变量PATH中。

  4. 克隆posh-git存储库到本地计算机。

  5. 进入posh-git存储库目录,运行.\install.ps1命令。

  6. 享受吧!


1
PSGet和poshgit这两个名字非常相似,我读成了同一个产品。糟糕了。 - P.Brian.Mackey
3
这个问题涉及到Install-Module命令不被识别的情况。 - Abhijit
2
install-module是PowerShellGet模块的一部分,可从PowerShell Gallery获取。 从PowerShell Gallery安装需要最新版本的PoweShellGet模块,该模块可在以下位置获取:
  • Windows 10中,在Windows Management Frameowork 5.0中或在基于MSI的安装程序中(适用于Powershell 3和4)。由于我使用的是PS4,因此我通过MSI(PackageManagement PowerShell Modules Preview - March 2016)进行了安装。
- Abhijit
1
@Abhijit 是的,这就是为什么我回答的第一部分是“您是否已安装了PsGet?”因为这可能是为什么Import-Module不可用的原因。关于Windows 10的信息很有用,但至少比这个答案晚了三个月。 - Etan Reisner
@EtanReisner 对不起,当我遇到无法运行Install-Module的问题时,我找到了这篇文章,并通过安装PackageManagement PowerShell模块MSI包来解决了这个问题(我仍在使用PS 4)。我不知道PsGet(与Microsoft的PowerShellGet相对)。 - Abhijit
请确保以管理员身份运行PowerShell或PowerShell ISE。 - Chris Wood

1
我遇到了同样的问题,但是我的$PSVersionTable.PSVersion版本是4.0。显然,Install-Module是PS v5的一部分。
我从这里下载了PS 5: https://www.microsoft.com/en-us/download/details.aspx?id=54616 我仍在Win 8.1 x64上,所以我选择了Win8.1AndW2K12R2-KB3191564-x64.msu,但请根据您的环境选择适当的文件。
重新启动计算机,打开PS并重试Install-Module命令。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接