找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 51152|回复: 11

[系统相关] [已解决]批处理如何系统位数x86及x64(32/64)?

[复制链接]
发表于 2011-5-10 13:04:23 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2017-3-29 10:48 编辑

請教論壇上的批處理前輩大哥

在 WINXP 及 WIN7 的環境裡批處理如何判斷系統位元 x86及x64 ,
懇請不吝指教,謝謝!!
发表于 2011-5-10 13:09:58 | 显示全部楼层
wmic os get OSArchitecture

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

发表于 2011-5-10 13:58:16 | 显示全部楼层
%PROCESSOR_ARCHITECTURE%

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

发表于 2011-5-10 14:02:22 | 显示全部楼层
楼上真简洁...我都忘了环境变量中有这个玩意
发表于 2011-5-10 18:38:32 | 显示全部楼层
64位系统WINDOWS文件夹下有SysWOW64文件夹  32位的没有

也可以用SYSTEMINFO判断

方法很多
 楼主| 发表于 2011-5-10 19:12:06 | 显示全部楼层
感謝樓上幾位前輩的回覆:
不知用此代碼判斷是否正確,小弟試過WINXP x86 可行,
目前手邊沒有x64的環境可測試!!

  1. @echo off
  2. cls
  3. echo %processor_architecture% | find "86" >nul && if %errorlevel% equ 0 echo 32 Bit
  4. echo %processor_architecture% | find "64" >nul && if %errorlevel% equ 0 echo 64 Bit
  5. pause >nul
复制代码
发表于 2011-5-10 19:35:41 | 显示全部楼层
6# dennisle
  1. if /i "%processor_architecture%"=="x86" (echo;32位) else echo;64位
复制代码
 楼主| 发表于 2011-5-10 19:46:58 | 显示全部楼层
7# hanyeguxing

非常感謝 hanyeguxing 小弟受教了!!
发表于 2011-5-11 02:16:33 | 显示全部楼层
刚才对比了一下 64 和 32的操作系统
%PROCESSOR_ARCHITECTURE%   
64的显示
PROCESSOR_ARCHITECTURE=AMD64
32位的
PROCESSOR_ARCHITECTURE=x86

为什么是AMD64而不是X64呢  我这CPU是 I7的
发表于 2011-5-11 03:29:40 | 显示全部楼层
本帖最后由 hanyeguxing 于 2011-5-11 03:51 编辑

%PROCESSOR_ARCHITECTURE%不是显示多少位的,而是显示返回处理器的芯片体系结构。只是在32位和64位之间区分明显,即32位下一般为x86 。Intel从8086开始,286、386、486、586、P1、P2、P3、P4等都用的同一种CPU架构,统称X86。x86是一个intel通用计算机系列的标准编号缩写,也标识一套通用的计算机指令集合,X与处理器没有任何关系,它是一个对所有*86系统的简单的通配符定义,例如:i386, 586,奔腾(pentium),换句话说即使是16位的也显示x86。
intel的64位架构为IA64,AMD的64位架构为AMD64。
发表于 2013-6-4 10:14:40 | 显示全部楼层
回复 4# CrLf


    提醒楼主,%PROCESSOR_ARCHITECTURE%这个环境变量如果用在批处理中,且该批处理被做成自解压包或使用32位的bat转exe工具打包后,再运行判断结果始终是X86。

    如果你有上述情况,还是建议你采取5楼的思路,比较简单保险。

    判断语句如下:
if exist %windir%\SysWOW64 echo 系统是64位
系统是32位
发表于 2014-7-2 16:13:39 | 显示全部楼层
回复 10# hanyeguxing


  现在Intel也有x86_64架构的CPU了,所以amd64准确的来讲是专指x86_64架构的cpu,无论是amd还是intel。而ia64是专指intel安腾系列架构的cpu
amd64和ia64这两种架构还是有区别的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 11:27 , Processed in 0.025110 second(s), 11 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表