You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已添加自定义Get-Help文件,PowerShell未加载该文件问题求助

我帮你梳理几个最可能的原因和对应的排查/修复步骤,应该能搞定你的自定义Help加载问题:

1. 确认帮助文件的命名与位置完全合规
  • 模块级帮助文件必须严格遵循命名规则:如果你的模块叫ModuleName,帮助文件必须是ModuleName-help.xml;如果是单个cmdlet的帮助,文件名要对应成Get-YourCmdletName-help.xml这种格式,不能有拼写错误。
  • 存放路径要准确:帮助文件必须放在模块根目录下的语言子文件夹里,比如英文环境用en-US,中文环境用zh-CN。同时,你的模块根目录必须在PowerShell的$env:PSModulePath路径中——你可以运行$env:PSModulePath命令确认自己的模块目录是否在列表内。
2. 验证帮助文件的编码与XML格式
  • 重点确认编码:PowerShell帮助文件要求必须是**UTF-16 LE(带BOM)**格式,哪怕是带BOM的UTF-8都不行。你可以用记事本打开帮助文件,点击「文件」→「另存为」,检查编码选项是不是选的「Unicode」(这个选项对应的就是UTF-16 LE)。
  • 检查XML语法:运行[xml]$helpContent = Get-Content .\ModuleName-help.xml加载帮助文件,如果报错,说明XML存在语法问题(比如标签不闭合、特殊字符未转义),得针对性修复。
3. 强制刷新PowerShell的帮助缓存

PowerShell会缓存帮助内容,有时候哪怕你放对了文件,旧缓存还会生效。按以下步骤操作:

  • 先卸载模块:Remove-Module ModuleName -Force
  • 清除帮助缓存:Remove-Item "$env:LOCALAPPDATA\Microsoft\Windows\PowerShell\HelpCache\*" -Force
  • 重新导入模块:Import-Module ModuleName -Force
  • 再执行Get-Help ModuleName测试效果
4. 检查模块清单(.psd1)的配置
  • 打开你的模块清单文件,确认HelpInfoURI字段(如果有设置)没有错误,虽然这个主要用于在线帮助,但配置异常可能影响本地帮助加载。
  • 同时确保RootModule字段指向的.psm1(或其他模块文件)路径正确,模块能正常导入——如果模块本身加载失败,自定义帮助肯定也不会显示。
5. 测试单个cmdlet的帮助

如果模块级帮助始终不加载,先试试单个cmdlet的帮助,比如Get-Help Get-MyCustomCmdlet。如果这个能显示自定义内容,说明模块级的帮助文件可能存在问题;如果所有cmdlet的帮助都不显示,那大概率还是文件位置、编码或命名的问题。

内容的提问来源于stack exchange,提问作者K.DOE

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:26:51