Board logo

标题: [系统相关] [已解决]批处理如何根据系统是32位或64位执行不同的命令? [打印本页]

作者: 波波虎    时间: 2015-3-17 23:44     标题: [已解决]批处理如何根据系统是32位或64位执行不同的命令?

如题,谢谢。
作者: pcl_test    时间: 2015-3-18 08:44

本帖最后由 pcl_test 于 2020-6-13 20:12 编辑

回复 1# 波波虎
  1. if /i "%PROCESSOR_IDENTIFIER:~0,3%" == "X86"
复制代码
  1. if exist "%SystemDrive%\Program Files (x86)\" (echo x86) else (echo x64)
复制代码
  1. wmic cpu get addresswidth | find /i "32" >nul &&(echo x86)||(echo x64)
复制代码
  1. wmic computersystem get systemtype | find /i "x86" >nul &&(echo x86)||(echo x64)
复制代码
  1. if not exist "%systemroot%\Syswow64\" (echo x86) else (echo x64)
复制代码
  1. if exist "%SystemDrive%\Program Files\Internet Explorer\iexplore.exe" if exist "%SystemDrive%\Program Files (x86)\Internet Explorer\iexplore.exe" (echo x64) else (echo x86)
复制代码
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1* delims=: " %%i in ('systeminfo ^| find "系统类型"') do (
  4. set v=%%j
  5. if /i "!v:~,3!" == "x86" (echo x86) else (echo x64)
  6. )
  7. pause
复制代码

作者: 波波虎    时间: 2015-3-18 21:15

谢谢大家。
作者: CrLf    时间: 2015-3-18 21:42

也可以简单用 systeminfo,比如我的电脑返回结果中有一行:
  1. 系统类型:         x64-based PC
复制代码

作者: jsbob    时间: 2016-4-19 09:07

很有用,解决了我的问题,继续学习!




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2