从 Windows 命令行获取文件版本以用于变量?

从 Windows 命令行获取文件版本以用于变量?

如何从 Windows 7 命令行上的文件中获取文件版本/产品版本,以便在文件中的变量中使用.bat

答案1

据我所知,你需要 filever.exe 才能执行此操作。正如评论中指出的那样。此外,我从以下内容中逐字逐句地摘录了以下内容这里

如何使用 Filever.exe 工具获取有关 Windows 中文件的特定信息

据我所知,filever输出总是以列的形式显示,而您需要的是第五列(版本)。因此,一个简单的for就足够了:

for /f "tokens=5 delims= " %%v in ('filever myFile.dll /b') do echo %%v

答案2

您可以使用以下方式检查sigcheck.exe这是Sysinternals 套件例如

$ sigcheck.exe -q -n app.exe
5.0.0.1241

通过指定-q(安静,无横幅)-n将仅显示文件版本号,因此您可以将其分配给变量。


如果你使用的是 Sigcheck64,则提供的 64 位版本纳米服务器,不支持32位程序,参数-q已被替换-nobanner。例如

$ sigcheck.exe -nobanner -n app.exe
    5.0.0.1241

来源:Sigcheck 和 Sigcheck64 有什么区别?SigCheck 手册页

相关内容