如何在 PowerShell 中获取文件版本
-
使用
Get-Item
在 PowerShell 中获取文件版本 -
使用
Get-ChildItem
在 PowerShell 中获取文件版本 -
使用
Get-Command
在 PowerShell 中获取文件版本 -
使用
System.Diagnostics.FileVersionInfo
在 PowerShell 中获取文件版本 - 结论

一个文件的版本号是一个关键的信息,特别是在管理和故障排除软件和系统文件时。在 PowerShell 中,您可以使用各种 cmdlet 和方法轻松检索此版本信息。
可执行文件包含版本信息,例如 .exe
和 .dll
。请注意,文本文件没有任何版本信息。
版本信息包含文件名、文件版本、公司名称、产品名称、产品版本和语言。本教程将教您如何在 PowerShell 中获取文件版本。
使用 Get-Item
在 PowerShell 中获取文件版本
PowerShell 提供了多种 cmdlet 和方法来获取文件版本,Get-Item
是其中之一。这种方法是最简单和最易于使用的方法之一。
语法:
(Get-Item "Path\to\file").VersionInfo.FileVersion
Get-Item
:这是 PowerShell 中的一个 cmdlet,用于检索指定路径下的文件或目录的信息。这仅获取单个文件或目录的信息。"Path\to\file"
:这是提供给Get-Item
的参数。它指定要检查的文件或目录的路径。.VersionInfo
:这是允许您访问和检查版本信息的属性。.FileVersion
:这是VersionInfo
属性的一个子属性,专门检索文件的文件版本。
以下示例显示了如何使用 Get-Item
和 VersionInfo.FileVersion
来获取文件 C:\P/rogram Files\Google\Chrome\Application\chrome.exe
的版本。
(Get-Item "C:\Program Files\Google\Chrome\Application\chrome.exe").VersionInfo.FileVersion
(Get-Item "C:\Program Files\Google\Chrome\Application\chrome.exe")
行使用 Get-Item
cmdlet 来检索位于指定路径的文件信息,该文件是给定目录中的 Chrome 可执行文件 (chrome.exe
)。然后,一旦获取到文件信息,代码访问文件的 VersionInfo
属性,该属性包含有关文件的各种详细信息,包括其版本信息。
最后,.FileVersion
检索我们所关心的特定信息,即 Chrome 可执行文件的文件版本。
输出:
98.0.4758.102
输出 98.0.4758.102
表示指定路径中 Chrome 可执行文件的文件版本。在这种情况下,它表明系统上安装的谷歌浏览器的版本是 98.0.4758.102
。
使用 Get-ChildItem
在 PowerShell 中获取文件版本
Get-ChildItem
获取一个或多个指定位置中的项目和子项目。我们还可以使用 Get-ChildItem
和 VersionInfo.FileVersion
属性来获取 PowerShell 中的文件版本。
语法:
(Get-ChildItem "Path\to\file").VersionInfo.FileVersion
Get-ChildItem
:此 cmdlet 用于列出指定位置中的文件和目录。"Path\to\file"
:这是提供给Get-ChildItem
的参数。它指定您要检查的文件或目录的路径。.VersionInfo
:此属性允许您访问和检查版本信息。.FileVersion
:这是VersionInfo
的一个子属性,专门检索文件的文件版本。
示例:
(Get-ChildItem "C:\Program Files\Google\Chrome\Application\chrome.exe").VersionInfo.FileVersion
(Get-ChildItem "C:\Program Files\Google\Chrome\Application\chrome.exe")
行使用 Get-ChildItem
cmdlet 来检索位于指定路径的文件信息,该文件是给定目录中的 Chrome 可执行文件 (chrome.exe
)。Get-ChildItem
用于列出指定位置中的文件和目录。
接下来,一旦获取到文件信息,代码访问文件的 VersionInfo
属性,该属性包含有关文件的各种详细信息,包括其版本信息。最后,.FileVersion
检索我们所关心的特定信息,即 Chrome 可执行文件的文件版本。
输出:
98.0.4758.102
输出 98.0.4758.102
表示指定路径中 Chrome 可执行文件的文件版本。在这种情况下,它表明系统上安装的谷歌浏览器的版本是 98.0.4758.102
。
使用 Get-Command
在 PowerShell 中获取文件版本
Get-Command
cmdlet 获取计算机上安装的所有命令。它包括所有 cmdlet、别名、函数、脚本和应用程序。
我们可以使用 FileVersionInfo.FileVersion
属性和 Get-Command
在 PowerShell 中获取文件版本。
语法:
(Get-Command "Path\to\file").FileVersionInfo.FileVersion
Get-Command
:这是用于检索有关命令、脚本或可执行文件的信息的 cmdlet。它可以用于查找关于 PowerShell 命令、函数或外部可执行文件的信息,包括它们的位置属性。"Path\to\file"
:这是提供给Get-Command
的参数。它指定了要检查的命令、脚本或可执行文件的路径。.FileVersionInfo
:此属性提供有关命令或脚本的版本信息的详细信息。.FileVersion
:这是FileVersionInfo
属性的一个子属性。它专门检索命令或脚本的文件版本。
以下命令获取文件 C:\Windows\System32\ActionCenter.dll
的文件版本号:
(Get-Command C:\Windows\System32\ActionCenter.dll).FileVersionInfo.FileVersion
(Get-Command C:\Windows\System32\ActionCenter.dll)
使用 Get-Command
cmdlet 来检索有关指定命令的信息(在这种情况下是 DLL 文件)。当我们将文件路径作为参数提供给 Get-Command
时,它返回有关文件的信息,包括其属性。
然后,一旦获取到文件信息,代码访问文件对象的 FileVersionInfo
属性。FileVersionInfo
属性包含有关文件的各种详细信息,包括其版本信息。
最后,.FileVersion
检索我们所关心的特定信息,即 ActionCenter.dll
文件的文件版本。
输出:
10.0.19041.1 (WinBuild.160101.0800)
输出 10.0.19041.1 (WinBuild.160101.0800)
表示指定路径中 ActionCenter.dll
文件的文件版本。在这种情况下,它表明系统上 ActionCenter.dll
文件的版本是 10.0.19041.1 (WinBuild.160101.0800)
。
使用 System.Diagnostics.FileVersionInfo
在 PowerShell 中获取文件版本
此方法使用文件路径(您要检索版本信息的实际文件路径)作为参数调用。此方法调用检索有关指定文件的版本信息。
.NET
框架中的 System.Diagnostics.FileVersionInfo
类提供文件的版本信息。我们可以使用 GetVersionInfo()
方法和 FileVersion
属性来获取文件版本号。
语法:
[System.Diagnostics.FileVersionInfo]::GetVersionInfo("Path\to\file").FileVersion
[System.Diagnostics.FileVersionInfo]
:此部分指定用于访问文件版本信息的 .NET 框架类。此 .NET 类提供对文件的版本信息的访问,通常是可执行文件,但也可以用于其他类型的文件。GetVersionInfo
:这是检索参数中指定的文件的版本信息的方法。"Path\to\file"
:这是提供给GetVersionInfo
方法的参数。它指定您要检查的文件的确切路径。.FileVersion
:此属性专门检索文件的文件版本。文件版本通常是表示文件或软件版本的数值。
示例:
[System.Diagnostics.FileVersionInfo]::GetVersionInfo("C:\Windows\System32\ActionCenter.dll").FileVersion
[System.Diagnostics.FileVersionInfo]::GetVersionInfo("C:\Windows\System32\ActionCenter.dll")
行使用 [System.Diagnostics.FileVersionInfo]
类,这是 .NET 框架的一部分,以获取有关指定文件的版本信息。::
语法用于访问 FileVersionInfo
类的静态方法 GetVersionInfo
,并将路径 "C:\Windows\System32\ActionCenter.dll"
作为参数提供给此方法。
然后,一旦获取到版本信息,代码访问 FileVersionInfo
对象的 FileVersion
属性。最后,FileVersion
属性包含一个表示文件版本的字符串。
输出:
10.0.19041.1 (WinBuild.160101.0800)
输出 10.0.19041.1 (WinBuild.160101.0800)
表示 ActionCenter.dll
文件的文件版本。在这种情况下,它表明系统上 ActionCenter.dll
文件的版本是 10.0.19041.1 (WinBuild.160101.0800)
。
结论
掌握在 PowerShell 中检索文件版本信息是一项高效文件管理和有效故障排除的基本技能。在本文中,我们学习了四种方法,使我们能够轻松提取数据。
无论我们选择使用 Get-Item
、Get-ChildItem
、Get-Command
还是 System.Diagnostics.FileVersionInfo
方法,我们现在都有一个多功能的工具包来获取文件版本详细信息。