bat命令批處理判斷32位還是64位系統(tǒng)的多種方法
第一種代碼:通過(guò) %PROCESSOR_ARCHITECTURE%
可以通過(guò)cmd中 通過(guò)echo %PROCESSOR_ARCHITECTURE%
if "%PROCESSOR_ARCHITECTURE%"=="x86" goto x86 if "%PROCESSOR_ARCHITECTURE%"=="AMD64" goto x64 exit :x64 explorer.exe http://www.baidu.com/ exit :x86 explorer.exe //www.jb51.net/
x86代表系統(tǒng)是32位,AMD64代表系統(tǒng)是64位
這段批處理代碼很簡(jiǎn)單,如果是32位系統(tǒng),就打開我們;如果是64位系統(tǒng),就打開百度
當(dāng)然了,這段批處理代碼并沒(méi)有實(shí)際的用途,只是做一個(gè)測(cè)試。實(shí)際情況下,這個(gè)檢測(cè)還是很有用的,比如根據(jù)不同的情況,注冊(cè)不同的服務(wù),等等
第二種代碼:if exist %windir%\SysWOW64
實(shí)例代碼
@echo off if exist %windir%\SysWOW64 ( start http://www.baidu.com )else ( start //www.jb51.net )
原理是判斷是否存在SysWOW64目錄,一般情況下64位系統(tǒng)都會(huì)有這個(gè)目錄。
這段批處理代碼很簡(jiǎn)單,如果是32位系統(tǒng),就打開我們;如果是64位系統(tǒng),就打開百度
以下我們小編為大家分享幾個(gè)實(shí)例
使用cmd命令批處理判斷windows系統(tǒng)是32bit還是64bit
@echo off ::從系統(tǒng)文件中獲取系統(tǒng)版本信息 for /f "tokens=1* delims=[" %%a in ('ver') do set b=%%b ::將版本信息賦值給變量b set b=%b:* =% ::輸出指定值 echo %b:~0,4% echo %PROCESSOR_ARCHITECTURE:~-1% echo %b:~0,4%%PROCESSOR_ARCHITECTURE:~-1% ::調(diào)用指定值對(duì)應(yīng)的cmd命令行 call:%b:~0,4%%PROCESSOR_ARCHITECTURE:~-1% pause&exit :5.1.6 echo 系統(tǒng)版本: winxp_32位 goto:eof :5.2.6 echo 系統(tǒng)版本: win2003_32位 goto:eof :5.2.4 echo 系統(tǒng)版本: win2003_64位 goto:eof :6.1.6 echo 系統(tǒng)版本:win7_32位 goto:eof :6.1.4 echo 系統(tǒng)版本:win7或win2008_64位
輸出如下:
繼續(xù)補(bǔ)充
64位系統(tǒng)注冊(cè)表:
[HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\CentralProcessor\0]
“Identifier”=”Intel64 Family 6 Model 62 Stepping 4”
64位系統(tǒng)系統(tǒng)變量:
PROCESSOR_IDENTIFIER = Intel64 Family 6 Model 62 Stepping 4, GenuineIntel
PROCESSOR_ARCHITECTURE = AMD64
@echo off IF "%PROCESSOR_ARCHITECTURE%" == "X86" ( echo 32位系統(tǒng) ) ELSE ( echo 64位或更高系統(tǒng) )
基本上這樣就明白了吧,真多32位于64位的很多需要區(qū)分對(duì)待這里就可以分開解決了。
下面繼續(xù)為大家分享一下
bat批處理判斷系統(tǒng)32位或64位以及操作系統(tǒng)類型
方法一:
systeminfo |find "x64"
方法二:
有時(shí)候需考慮wow的情況
IF PROCESSOR_ARCHITECTURE == amd64 or PROCESSOR_ARCHITEW6432 == amd64 THEN // OS is 64bit ELSE // OS is 32bit END IF Another way to test for the same thing is: IF PROCESSOR_ARCHITECTURE == x86 AND PROCESSOR_ARCHITEW6432 NOT DEFINED THEN // OS is 32bit ELSE // OS is 64bit END IF
var中存儲(chǔ)的數(shù)據(jù),PROCESSOR_ARCHITECTURE存儲(chǔ)的內(nèi)容
@echo off for /f "tokens=1* delims=[" %%a in ('ver') do set b=%%b set b=%b:* =% goto %b:~0,4%%PROCESSOR_ARCHITECTURE:~-1% :5.1.6 echo xp_32λ goto:eof :6.1.6 echo win7_32λ goto:eof :6.1.4 echo win7_64λ :6.0.6 echo vista_32 ::exit :6.0.4 echo vista_64 ::exit pause
批處理檢測(cè)32位64位系統(tǒng),結(jié)果到文本,判斷后將文件夾123拷貝相應(yīng)program files或program files(x86)中?
通過(guò)批處理程序檢測(cè)系統(tǒng)是32位還是64位,將結(jié)果保存到c:\a.txt文件中,并且通過(guò)判斷的結(jié)果32位系統(tǒng)將123文件夾拷貝到C:\Program Files文件夾中,是64位系統(tǒng)則將123文件夾拷貝到C:\program files(x86)文件夾中。
比如我有很多綠色軟件,不是每一個(gè)軟件都需要判斷32位還是64位,都只是拷貝到C:\Program Files中,這樣做是不是只是臨時(shí)設(shè)置一次,不會(huì)影響到其它的批處理文件拷貝的路徑吧?
@echo off if %PROCESSOR_ARCHITECTURE%==x86 (echo 32位系統(tǒng)>c:\a.txt&xcopy /d/y/c/e/h/k "%~dp0123" "C:\Program Files\123\") else (echo 64位系統(tǒng)>c:\a.txt&xcopy /d/y/c/e/h/k "%~dp0123" "C:\Program Files (x86)\123\") pause
或
@echo off if %PROCESSOR_ARCHITECTURE%==x86 (set "var=C:\Program Files") else set "var=C:\Program Files (x86)" echo %var% pause
是的,上面的代碼并沒(méi)有設(shè)置環(huán)境變量,只是設(shè)置了在批處理中的臨時(shí)局部變量而已,退出批處理就失效了.
上一篇:使用BAT命令關(guān)閉:135端口、139端口、445端口等
欄 目:DOS/BAT
下一篇:寫了個(gè)批量替換字符串的bat批處理(replaceChar.bat)
本文標(biāo)題:bat命令批處理判斷32位還是64位系統(tǒng)的多種方法
本文地址:http://mengdiqiu.com.cn/a1/DOS_BAT/10016.html
您可能感興趣的文章
- 01-10DOS下查看硬盤分區(qū)該使用什么命令
- 01-10后臺(tái)運(yùn)行bat定時(shí)器程序示例分享
- 01-10使用批處理實(shí)現(xiàn)軟件的自動(dòng)安裝以安裝搜狗拼音為例
- 01-10通過(guò)批處理修改DNS的代碼(推薦)
- 01-10windows使用批處理發(fā)布web到tomcat并啟動(dòng)tomcat腳本分享
- 01-10再談DOS批處理下格式化日期字符串的三種方法(詳解)
- 01-10用批處理一鍵安裝兩種擴(kuò)展名的Windows系統(tǒng)補(bǔ)丁
- 01-10ip地址切換批處理腳本分享
- 01-10Windows設(shè)置開機(jī)自啟動(dòng)bat腳本
- 01-10ftp自動(dòng)下載文件腳本分享(ftp命令下載文件)


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 01-10DOS下查看硬盤分區(qū)該使用什么命令
- 01-10使用批處理實(shí)現(xiàn)軟件的自動(dòng)安裝以安
- 01-10后臺(tái)運(yùn)行bat定時(shí)器程序示例分享
- 01-10通過(guò)批處理修改DNS的代碼(推薦)
- 01-10dota2服務(wù)器ping測(cè)試腳本分享
- 01-10再談DOS批處理下格式化日期字符串的
- 01-10windows使用批處理發(fā)布web到tomcat并啟動(dòng)
- 01-10win7怎么設(shè)定關(guān)閉顯示器時(shí)間
- 01-10屏蔽up鍵禁止游戲運(yùn)行腳本分享
- 01-10win7創(chuàng)建wifi熱點(diǎn)腳本分享
隨機(jī)閱讀
- 01-10delphi制作wav文件的方法
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 04-02jquery與jsp,用jquery