wmic 结果保存到命名文本文件

wmic 结果保存到命名文本文件

我正在编写一个批处理脚本来安装依赖于 32 位或 64 位的软件。我正在使用“wmic os get osarchitecture”来确定 Windows 操作系统的体系结构。

我想要做的是将 WMIC 输出到基于输出的命名文本文件。例如,如果结果是 32 位操作系统,那么它将创建一个名为 32bit.txt 的文本文件,或者如果它是 64 位操作系统,它将创建一个名为 64bit.txt 的文本文件。

这样,如果 32bit.txt 存在,我就可以让批处理脚本运行 32 位安装程序,如果 64bit.txt 存在,我就可以让批处理脚本运行 64 位安装程序。

答案1

环境PROCESSOR_ARCHITECTURE变量可以为你提供与你想要的类似的内容。它将包含x86AMD64ARM64或者IA64,您可以将其附加到文件名中。

例如:

wmic os get osarchitecture >%PROCESSOR_ARCHITECTURE%.txt

您也可以直接在批处理脚本中使用它来调用安装程序。例如,我通常为批处理安装使用以下文件结构:

root
    x64
        installer.exe
    x86
        installer.exe

批处理文件将包含类似以下内容:

IF "%PROCESSOR_ARCHITECTURE%"=="x86" (set bit=x86) else (set bit=x64)
"%bit%\installer.exe"

如果您更喜欢使用 WMIC,则可以不使用文件来实现此目的:

for /f "tokens=1,2 delims=-" %%a in ('wmic os get osarchitecture ^| find "bit"') do set bit=%%a%%b

bit将包含32bit64bit

相关内容