获取 PowerShell 版本
PowerShell 是一种更复杂的命令提示符。它带有大量准备好的 cmdlet 以及在各种场景中利用 .NET 框架/C# 的能力。PowerShell ISE 是一个图形用户界面,用于在 Windows 上调试和编辑脚本。在 PowerShell 中,同样的事情可以通过多种方式完成。因此,主要有四种方法可以获取 PowerShell 的版本,下面给出它们。
使用 $PSVersionTable.PSVersion
属性获取 PowerShell 版本
所以我们要研究的第一个方法是自动变量 $PSVersionTable
中的 PSVersion 属性。在这里,它代表 PowerShell 引擎。
PS52> $PSVersionTable.PSVersion
输出:
Major Minor Build Revision
----- ----- ----- --------
5 1 19041 1320
$PSVersionTable
是一个只读哈希表,提供有关 PoweShell 引擎版本和 PSEdition 的信息。此参数可以是 Desktop 或 Core,它将为你提供有关你正在使用的 PowerShell 版本的其他信息。
自动变量 $PSVersionTable
在本地和远程一样准确。我在下面的示例中包含 $PSVersionTable。脚本块内的 PSVersion 并在远程计算机上运行它会返回相同的版本。
PS> Invoke-Command -ComputerName 11.0.0.3 -ScriptBlock {$PSVersionTable.PSVersion} -Credential $cred
输出:
使用 (Get-Host).Version
属性获取 PowerShell 版本
PowerShell 中使用了主机的概念。导致问题的不是 PowerShell 引擎。PowerShell 主机是带有内置终端的 PowerShell 代码编辑器/控制台。主机可以拥有完全独立的 PowerShell 版本。
当使用 (Get-Host).Version
时,它会输出类似于 PowerShell 版本的版本号。
PS52> (Get-Host).Version
输出:
Major Minor Build Revision
----- ----- ----- --------
5 1 19041 1320
但是,内置终端中的 Get-Host 版本并不总是相同的。尽管主机通常代表相同版本的 PowerShell 引擎,但情况并非总是如此。在本地计算机上调用 Get-Host 时,它总是返回相同的版本,但从不在远程系统上。
因此,对所有事情都使用 Get-Host 是一个糟糕的主意。
使用 $host.Version
属性获取 PowerShell 版本
.$host.Version
是另一种获取 PowerShell 引擎版本的方法。Get-Host
提供与 $host 变量相同的结果,一个完全自动化的变量。
PS52> $host.Version
输出:
Major Minor Build Revision
----- ----- ----- --------
5 1 19041 1320
这与 Get-host
方法非常相似。
使用注册表获取 PowerShell 版本
仅当你不热衷于启动 PowerShell 时,你也可以检查注册表。PowerShell 的版本存储在注册表的键值路径中,如下 HKLM:\SOFTWARE\Microsoft\PowerShell\3\
并且也是一个值。Get-ItemProperty
可用于引用此注册表项中的 PowerShellVersion 值。
PS51> (Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine -Name 'PowerShellVersion').PowerShellVersion
输出:
5.1.19041.1
相关文章
在 Windows PowerShell 中获取命令行参数
发布时间:2024/03/04 浏览次数:358 分类:编程语言
-
本文将解释我们如何使用 PowerShell 的参数函数处理命令行参数,参数如何工作,我们如何使用 PowerShell 参数将值传递给参数,以及定义参数的基本方法是什么。
Windows PowerShell 中的 Base64 编码
发布时间:2024/03/04 浏览次数:332 分类:编程语言
-
本文将展示如何编码和解码 base64 字符串。Windows PowerShell 当前版本没有本机命令,因此我们将向你展示如何执行此操作的替代方法。
在 Windows PowerShell 中写入输出
发布时间:2024/03/04 浏览次数:259 分类:编程语言
-
本文将向你展示如何在 Windows PowerShell 中编写或打印输出。本文还将区分多个 write cmdlet 并解释它们的意义。
在 Windows PowerShell 中设置 PATH 环境变量
发布时间:2024/03/04 浏览次数:350 分类:编程语言
-
本文将展示在 Windows PowerShell 中设置路径环境变量的正确方法。本文还展示了如何在持久性和非持久性方法中设置变量。
在 Windows PowerShell 中打印环境变量
发布时间:2024/03/04 浏览次数:869 分类:编程语言
-
本文将讨论什么是环境变量以及如何使用多个 Windows PowerShell 命令打印它们。
在 PowerShell 中注释代码
发布时间:2024/03/04 浏览次数:363 分类:编程语言
-
本文将展示在 Windows PowerShell 中注释代码的多种方法。本文还介绍了注释代码时的一些最佳实践。
在 PowerShell 中执行 LDAP 查询
发布时间:2024/03/04 浏览次数:304 分类:编程语言
-
本文将深入了解如何使用 Active Directory 过滤器和 LDAP 过滤器。