Windows:命令行读取可执行文件的版本信息?

下雪了

Windows是否具有可以在命令外壳程序中运行的可执行文件,该外壳程序返回可执行文件(.exe)的版本号?

我看到很多问题,这些问题说明了如何使用不同的语言来实现它,并引用了第三方软件来编写它,但是我找不到一个简单的shell命令来实现它。其他要点,如果我不需要安装任何东西。

它必须以普通用户身份运行。不是管理员。

MC ND
wmic datafile where name="C:\\Windows\\System32\\msiexec.exe" get Version /value 

您可以wmic用来做。您可以将其包装到批处理文件中

@echo off
    setlocal enableextensions

    set "file=%~1"
    if not defined file goto :eof
    if not exist "%file%" goto :eof

    set "vers="
    FOR /F "tokens=2 delims==" %%a in ('
        wmic datafile where name^="%file:\=\\%" get Version /value 
    ') do set "vers=%%a"

    echo(%file% = %vers% 

    endlocal

另存为(示例)getVersion.cmd并调用为getVersion.cmd "c:\windows\system32\msiexec.exe"

编辑以适应注释并且不需要管理员权限。在这种情况下,将使用混合的cmd / javascript文件查询wmi。用法相同

@if (@this==@isBatch) @then
@echo off
    setlocal enableextensions

    set "file=%~f1"
    if not exist "%file%" goto :eof

    cscript //nologo //e:jscript "%~f0" /file:"%file%"

    endlocal

    exit /b
@end
    var file = WScript.Arguments.Named.Item('file').replace(/\\/g,'\\\\');
    var wmi = GetObject('winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\cimv2')
    var files = new Enumerator(wmi.ExecQuery('Select Version from CIM_datafile where name=\''+file+'\'')) 

    while (!files.atEnd()){
        WScript.StdOut.WriteLine(files.item().Version);
        files.moveNext();
    };
    WScript.Quit(0)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Windows可执行文件的命令行选项

来自分类Dev

从命令行运行可执行文件时保留以前的信息

来自分类Dev

如何更改命令行可执行文件?

来自分类Dev

如何从命令行比较两个可执行文件的版本?

来自分类Dev

通过python与Windows可执行文件命令行GUI进行通信

来自分类Dev

如何在执行之前通过命令行设置可执行文件的工作目录?

来自分类Dev

是否可以确定将哪些命令行参数传递给Windows可执行文件?

来自分类Dev

如何从命令行设置Windows可执行文件的组和相似性

来自分类Dev

在不进入命令行的文件位置的情况下访问可执行文件

来自分类Dev

在visual studio post build命令行中从链接文件运行可执行文件

来自分类Dev

如何在Clojure中创建命令行可执行文件

来自分类Dev

sbt当多个可执行文件时如何传递命令行参数

来自分类Dev

F#从命令行构建32位可执行文件

来自分类Dev

如何从Linux命令行运行.exe可执行文件?

来自分类Dev

提供命令行参数以使用ltrace / strace运行可执行文件

来自分类Dev

Py2exe可执行文件显示黑色命令行窗口

来自分类Dev

Clozure CL编译的可执行文件丢失了某些命令行参数

来自分类Dev

如何在Clojure中创建命令行可执行文件

来自分类Dev

如何从Linux命令行运行.exe可执行文件?

来自分类Dev

命令行长度限制:内置vs可执行文件

来自分类Dev

如何通过命令行将其粘贴到终端可执行文件中?

来自分类Dev

在调用可执行文件时查找命令行使用的路径

来自分类Dev

如何使用命令行在 Scheme 中加载可执行文件

来自分类Dev

作为可执行文件运行Python文件与从命令行运行Python文件之间的区别?

来自分类Dev

获取 bash 命令的输出并将其作为命令行参数传递给 ac 可执行文件(管道)

来自分类Dev

将多个命令行参数传递给带有文本文件的可执行文件

来自分类Dev

如何将 Node.js 命令行应用程序转换为单个可执行文件?

来自分类Dev

如何通过c中的命令行在Xcode中执行和编译程序,可执行文件在哪里?

来自分类Dev

如何使用“ execl()”在C / C ++中运行系统命令,仅将函数参数作为命令行传递,而不作为可执行文件传递?

Related 相关文章

  1. 1

    Windows可执行文件的命令行选项

  2. 2

    从命令行运行可执行文件时保留以前的信息

  3. 3

    如何更改命令行可执行文件?

  4. 4

    如何从命令行比较两个可执行文件的版本?

  5. 5

    通过python与Windows可执行文件命令行GUI进行通信

  6. 6

    如何在执行之前通过命令行设置可执行文件的工作目录?

  7. 7

    是否可以确定将哪些命令行参数传递给Windows可执行文件?

  8. 8

    如何从命令行设置Windows可执行文件的组和相似性

  9. 9

    在不进入命令行的文件位置的情况下访问可执行文件

  10. 10

    在visual studio post build命令行中从链接文件运行可执行文件

  11. 11

    如何在Clojure中创建命令行可执行文件

  12. 12

    sbt当多个可执行文件时如何传递命令行参数

  13. 13

    F#从命令行构建32位可执行文件

  14. 14

    如何从Linux命令行运行.exe可执行文件?

  15. 15

    提供命令行参数以使用ltrace / strace运行可执行文件

  16. 16

    Py2exe可执行文件显示黑色命令行窗口

  17. 17

    Clozure CL编译的可执行文件丢失了某些命令行参数

  18. 18

    如何在Clojure中创建命令行可执行文件

  19. 19

    如何从Linux命令行运行.exe可执行文件?

  20. 20

    命令行长度限制:内置vs可执行文件

  21. 21

    如何通过命令行将其粘贴到终端可执行文件中?

  22. 22

    在调用可执行文件时查找命令行使用的路径

  23. 23

    如何使用命令行在 Scheme 中加载可执行文件

  24. 24

    作为可执行文件运行Python文件与从命令行运行Python文件之间的区别?

  25. 25

    获取 bash 命令的输出并将其作为命令行参数传递给 ac 可执行文件(管道)

  26. 26

    将多个命令行参数传递给带有文本文件的可执行文件

  27. 27

    如何将 Node.js 命令行应用程序转换为单个可执行文件?

  28. 28

    如何通过c中的命令行在Xcode中执行和编译程序,可执行文件在哪里?

  29. 29

    如何使用“ execl()”在C / C ++中运行系统命令,仅将函数参数作为命令行传递,而不作为可执行文件传递?

热门标签

归档