发布于 

如何更新PowerShell帮助

更新Power Shell运行update-help会进行更新但是会报以下错误:

1
2
3
Update-Help : 无法更新带有 UI 区域性 {zh-CN} 的模块“ConfigDefender, HostNetworkingService, 
PSReadline”帮助: 在 HelpInfo XML 文件中检索不到 UI 区域性 zh-CN。确保模块清单中的 HelpInfoUri 属
性有效·或检查网络连接是否正常,然后重试该命令。

通常你去网页上搜索答案都是让你运行以下两条命令:

1
2
3
Update-Help -ErrorAction SilentlyContinue
or
Update-Help -Verbose -Force -ErrorAction SilentlyContinue

但是此两条命令的默认功能是“不向我显示错误,只需跳过它们”,特别是对新用户来说,因为它导致了错误的做法。而在power shell 7中则会让你尝试运行Update-Help -UICulture en-US但是她还是会报错:

1
2
3
4
Update-Help: Failed to update Help for the module(s) 'PSReadline' with UI culture(s)
{en-US} : One or more errors occurred. (Response status code does not indicate success:
404 (The specified blob does not exist.).).
English-US help content is available and can be installed using: Update-Help -UICulture en-US.

这个错误的来源与在 PowerShell 6 及更高版本中,PSReadLine模块用大写L字符拼写。但是错误消息使用的是小写字母。可以使用以下步骤来解决这个问题,并更新帮助:

  1. 关闭所有powerhell.exe进程。然后将PSReadline模块的文件夹名称重命名为PSReadLine。
  2. 在管理员权限下打开一个powershell.exe会话。
  3. 运行Remove-Module PSReadline来删除自动加载的PSReadline模块。
  4. 运行Import-Module PSReadLine(使用PSReadLine,大写字母L)。
  5. 然后运行Update-Help -Module PSReadLine -Force。

扩展:

1
2
3
4
help 要查询命令 -full #查询某个命令的所有帮助文档
get-help 要查询命令 -detailed #查询某个命令的所有帮助文档,但是要简化参数部分的解释
get-help 要查询命令 -examples # 查询某个命令的使用示例
get-help 要查询命令 -online # 在网页中查看命令帮助,使用命令

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。