当前位置: 首页 > 编程笔记 >

如何检查在本地和远程系统中安装的PowerShell版本?

饶德本
2023-03-14
本文向大家介绍如何检查在本地和远程系统中安装的PowerShell版本?,包括了如何检查在本地和远程系统中安装的PowerShell版本?的使用技巧和注意事项,需要的朋友参考一下

要检查系统中安装的PowerShell版本,可以使用$PSVersionTable$host命令。

  • 检查$host命令在远程服务器中是否可用。

在系统中打开PowerShell控制台,然后运行命令$PSVersionTable

$PSVersionTable

输出结果

PS C:\WINDOWS\system32> $PSVersionTable
Name                             Value
----                             -----
PSVersion                        5.1.18362.628
PSEdition                        Desktop
PSCompatibleVersions             {1.0, 2.0, 3.0, 4.0...}
BuildVersion                     10.0.18362.628
CLRVersion                       4.0.30319.42000
WSManStackVersion                3.0
PSRemotingProtocolVersion        2.3
SerializationVersion             1.1.0.1

因此,这里有$PSVersionTable的输出。您可以看到输出属性$PSVersion,该属性指示PowerShell的版本信息。

$PSVersionTable.PSVersion

输出结果

Major    Minor    Build    Revision
-----    -----    -----    --------
5       1         18362    628

在Major属性中,它指示PowerShell版本为5且Build为18362

同样,您可以在PowerShell中使用$Host命令获得以上输出。

PS C:\WINDOWS\system32> $Host
Name :                       ConsoleHost
Version                      : 5.1.18362.628
InstanceId                   : f6d2bf19-db26-403b-9749-afede37ea56f
UI                           : System.Management.Automation.Internal.Host.InternalHostUserInterface CurrentCulture               :en-IN
CurrentUICulture             : en-US
PrivateData                  : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
DebuggerEnabled              : True
IsRunspacePushed             : False
Runspace                     : System.Management.Automation.Runspaces.LocalRunspace

您可以从version属性获取PowerShell版本。

$Host.Version

输出结果

PS C:\WINDOWS\system32> $Host.Version
Major    Minor    Build    Revision
 -----   -----    -----    --------
 5       1        18362    628

要在远程计算机上获取输出,您需要使用Invoke-Command或PSRemote会话命令作为$PSverionTable,并且$Host不支持− ComputerName参数。

Invoke-Command -ComputerName Test-PC -ScriptBlock{$PSVersionTable.PSVersion}

如果您有多台计算机,并且需要使用主机名和PS版本(而不是主机名),则可以使用Pipeline或PSCustomObject命令。

示例

Invoke-Command -ComputerName Test-PC,DC1 -ScriptBlock{$PSVersionTable.PSVersion} | Select PSComputerName, @{N="PS Version";E={$_.Major}}

如果有服务器列表,则可以将所有服务器添加到文本文件中并运行上述命令。

例如,我们有服务器列表存储在D:\ Temp \ Servers.txt中,我们需要在它们上获取PS版本。

Invoke-Command -ComputerName (Get-Content D:\Temp\Servers.txt) -
ScriptBlock{$PSVersionTable.PSVersion} | Select PSComputerName, @{N="PS Version";E={$_.Major}}
 类似资料:
  • 我在Mac OS High Sierra上使用自制软件安装了gradle。我想检查这个版本,以及它是否成功安装在我的笔记本电脑上。我没有在Android Studio中使用它。

  • 问题内容: 相对较新。似乎微不足道,但我不知道如何检测操作系统版本。我知道我可以使用并获得平台和体系结构,但是说我知道我在linux上,但是我想确定我是否在RH6上,而在RH7上,等等。 问题答案: 因此,至少在Linux上,软件包中确实存在这种晦涩的方法。它填充的结构有点笨拙,没有文档说明,但是您可以了解它的要点: 顺便说一句,这在操场上不起作用,可能是由于沙箱的限制,但是在Linux上起作用。

  • 问题内容: 如何在Windows系统上安装程序(例如检查Mozilla Firefox)时如何使用Java进行检查? 问题答案: 我假设您在谈论Windows。由于Java旨在成为一种与平台无关的语言,并且每种平台如何确定它的方式各不相同,因此没有标准的Java API可以对此进行检查。但是,您可以借助对Windows注册表进行爬网的DLL上的JNI调用来完成此操作。然后,您可以只检查注册表中是否

  • 我想知道安装了什么版本的virtual env?我的操作系统是Windows10 非常感谢。

  • 问题内容: 有没有办法检查在我的机器上全局安装的angular-cli的特定版本?我在Windows环境中。 npm -v 和 node -v分别 只给我npm和node的版本,我似乎找不到任何与 ng相关的 命令。 我正在尝试运行一个我正在处理的项目,并且该项目使用npm在旧版本的angular- cli上运行。但是,在安装其他演示项目之后,如果不卸载并重新安装特定版本的angular-cli,

  • 有没有办法检查在我的机器上全局安装的的特定版本?我在Windows环境中。分别只给我npm和node的版本,我似乎找不到任何带有ng的命令。 我正在尝试运行一个我正在处理的项目,它使用npm在旧版本的angular cli上运行。然而,在安装了其他演示项目之后,如果不在特定版本上卸载和重新安装<code>angular cli