Powershell V5.0 中缺少帮助文件
Missing Help Files in Powershell V5.0
电源shell版本:5.0.10586.494
这个周末刚开始使用powershell,发现在使用shell的时候找不到任何帮助文件,比如我想看about_Comparison_Operators 帮助文件,但控制台似乎找不到它。
做的时候:Get-Help About_*
我得到的唯一结果是About_CimSession
...好像没有其他帮助文件?
This TechNet article 建议在 Powershell v3 中必须导入模块,
To download or update the help files for a module in Windows PowerShell 3.0, use the Update-Help cmdlet.
不知道我的情况是不是一样的?我使用了 update-help cmdlet(以管理员身份),它似乎不会影响帮助文件。
谢谢!
编辑:忘了说,我在尝试更新帮助时一直 运行 PS 作为管理员。这运行没有错误,但帮助文件保持不变。
更新:仍然不走运,尝试通过使用 UICulture 参数指定语言来更新帮助,但这并没有什么不同。如果我找到修复程序,将保持此 post 更新。
更新:PowerShell 更新table 帮助不再 损坏。 About_ 帮助文件现在下载时带有正确的扩展名。然而,这些纯文本文件的格式仍然不等于旧版本。
PowerShell updatable 帮助目前已损坏。 PS5 不附带那些 about_* 帮助文件,如果您更新帮助以下载它们,它们不会以适当的文件扩展名存储,因此 get-help 不会读取它们。
直到最近才开始下载这些文件,因此如果您有一段时间没有尝试过,您仍然应该 update-help -force
在提升的会话中进行下载。然后,查看此答案以获得将正确重命名文件的单行代码:https://superuser.com/a/1134681/4782
但是,由于(可能)不相关的问题,这些新的帮助文件有一些损坏的文本格式,这使得它们在任何时候都很难阅读 table-like 布局正在使用。如果您想要获取 PS4 时代的 about_* 格式正确的文件并改用这些文件,可以在此处找到替代解决方案:https://github.com/kilasuit/Install-AboutHelp。请注意,此解决方案会将 about_* 文件的存档解压缩到 en\
语言环境文件夹,该文件夹可能不是您的默认语言环境(例如,我的是 en-US\
)。这将正常工作,因为只要所需文档 不 存在于您的默认区域设置文件夹中,en\
位置将用作后备。
进一步参考:
- https://github.com/PowerShell/PowerShell/issues/2028
- https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/15832144-powershell-5-on-windows-10-server-2012-helpfiles-a
- https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/17014843-core-help-files-as-of-2016-11-08-have-broken-tex
仅限非英语 OS
如果您在没有 "en-US" 语言设置的操作系统上使用 PowerShell v5,则 update-help
会尝试下载您的语言的帮助文件,这可能不可用。使用:
Update-Help -UICulture "en-US"
在提升的(管理)控制台中。
背景
您可以使用 cmdlet get-culture
检查您的语言设置。就我而言,我得到:
PS C:\> Get-Culture
LCID Name DisplayName
---- ---- -----------
1031 de-DE Deutsch (Deutschland)
至少今天 (20.7.2017) 缺少帮助文件(例如 get-services
)。请注意,get-help
小程序在求助于 "en-US" Quelle (in Deutsch).
之前仍将首先查找您的语言的帮助文件
电源shell版本:5.0.10586.494
这个周末刚开始使用powershell,发现在使用shell的时候找不到任何帮助文件,比如我想看about_Comparison_Operators 帮助文件,但控制台似乎找不到它。
做的时候:Get-Help About_*
我得到的唯一结果是About_CimSession
...好像没有其他帮助文件?
This TechNet article 建议在 Powershell v3 中必须导入模块,
To download or update the help files for a module in Windows PowerShell 3.0, use the Update-Help cmdlet.
不知道我的情况是不是一样的?我使用了 update-help cmdlet(以管理员身份),它似乎不会影响帮助文件。
谢谢!
编辑:忘了说,我在尝试更新帮助时一直 运行 PS 作为管理员。这运行没有错误,但帮助文件保持不变。
更新:仍然不走运,尝试通过使用 UICulture 参数指定语言来更新帮助,但这并没有什么不同。如果我找到修复程序,将保持此 post 更新。
更新:PowerShell 更新table 帮助不再 损坏。 About_ 帮助文件现在下载时带有正确的扩展名。然而,这些纯文本文件的格式仍然不等于旧版本。
PowerShell updatable 帮助目前已损坏。 PS5 不附带那些 about_* 帮助文件,如果您更新帮助以下载它们,它们不会以适当的文件扩展名存储,因此 get-help 不会读取它们。
直到最近才开始下载这些文件,因此如果您有一段时间没有尝试过,您仍然应该 update-help -force
在提升的会话中进行下载。然后,查看此答案以获得将正确重命名文件的单行代码:https://superuser.com/a/1134681/4782
但是,由于(可能)不相关的问题,这些新的帮助文件有一些损坏的文本格式,这使得它们在任何时候都很难阅读 table-like 布局正在使用。如果您想要获取 PS4 时代的 about_* 格式正确的文件并改用这些文件,可以在此处找到替代解决方案:https://github.com/kilasuit/Install-AboutHelp。请注意,此解决方案会将 about_* 文件的存档解压缩到 en\
语言环境文件夹,该文件夹可能不是您的默认语言环境(例如,我的是 en-US\
)。这将正常工作,因为只要所需文档 不 存在于您的默认区域设置文件夹中,en\
位置将用作后备。
进一步参考:
- https://github.com/PowerShell/PowerShell/issues/2028
- https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/15832144-powershell-5-on-windows-10-server-2012-helpfiles-a
- https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/17014843-core-help-files-as-of-2016-11-08-have-broken-tex
仅限非英语 OS
如果您在没有 "en-US" 语言设置的操作系统上使用 PowerShell v5,则 update-help
会尝试下载您的语言的帮助文件,这可能不可用。使用:
Update-Help -UICulture "en-US"
在提升的(管理)控制台中。
背景
您可以使用 cmdlet get-culture
检查您的语言设置。就我而言,我得到:
PS C:\> Get-Culture
LCID Name DisplayName
---- ---- -----------
1031 de-DE Deutsch (Deutschland)
至少今天 (20.7.2017) 缺少帮助文件(例如 get-services
)。请注意,get-help
小程序在求助于 "en-US" Quelle (in Deutsch).