在 PowerShell 3 中,如果您正在搜索可以同时使用的命令,Get-Help Get-* 和 Get-Command Get-* 都有效吗?
那么主要的区别是什么?
在 PowerShell 3 中,如果您正在搜索可以同时使用的命令,Get-Help Get-* 和 Get-Command Get-* 都有效吗?
那么主要的区别是什么?
这两个命令共享很多信息,但主要区别在于Get-Help
输出 MAML 对象(“基于文本”,容易出错,甚至可能过时),同时Get-Command
获取真实对象(元数据),您可以进一步调查。
对于大多数帮助部分,Get-Help
显示包含在 XML 文件中的预制帮助。对于其他部分,Get-Help
“正在使用”Get-Command
生成信息,如 SYNTAX 部分。
Get-Command
还可以获取 Get-Help 无法获取的信息,例如命令的模块、DLL 路径(如果是已编译的 cmdlet)、参数集等。
一个不能替代另一个,您可以在不同的情况下使用两者。
我的想法是——Get-Command
返回有关命令的技术信息(DLL、实现类型、函数的函数体等),Get-Help
返回有关命令的用户友好信息(详细语法、示例、参数说明等)。
并Get-Command
返回一个正常的对象,它的行为完全正常且可预测,而Get-Help
返回一个奇怪的格式化帮助对象,它实际上只用于在控制台中查看,而不是用于代码处理。