如何获取单行字符串格式的完整PowerShell版本信息?
获取纯净的PowerShell版本号单行输出
我需要获取PowerShell的版本号,要求是无多余表格、换行的干净单行输出,方便存入变量。之前尝试了几种方法,但输出都存在冗余内容:
- 使用
(Get-Host).Version,输出带表头的表格:
Major Minor Build Revision ----- ----- ----- -------- 5 1 19041 2673
- 使用
Get-Host | Select-Object Version,输出带列名的结果:
Version ------- 5.1.19041.2673
- 使用
Get-Host | Format-List -Property Version,输出带键名且上下有空行:
Version : 5.1.19041.2673
- 使用
Get-Host | Format-Wide -Property Version,输出接近需求但上下有空行:
5.1.19041.2673
最简单的解决方案
直接调用Version对象的ToString()方法,即可得到无任何冗余的纯版本号单行输出:
(Get-Host).Version.ToString()
输出示例:
5.1.19041.2673
另外补充:如果需要获取PowerShell引擎的真实版本(Get-Host返回的是宿主程序版本,部分场景下会和引擎版本有差异),可以通过$PSVersionTable获取,同样用ToString()得到纯净输出:
$PSVersionTable.PSVersion.ToString()
内容的提问来源于stack exchange,提问作者Sargon
相关产品推荐
相关产品推荐

