批处理检测32位64位系统,结果到文本,判断后将文件夹123拷贝相应program files或program files(x86)中?

通过批处理程序检测系统是32位还是64位,将结果保存到c:尀a.txt文件中,并且通过判断的结果32位系统将123文件夹拷贝到C:尀Program Files文件夹中,是64位系统则将123文件夹拷贝到C:尀program files(x86)文件夹中。比如我有很多绿色软件,不是每一个软件都需要判断32位还是64位,都只是拷贝到C:尀Program Files中,这样做是不是只是临时设置一次,不会影响到其它的批处理文件拷贝的路径吧?
2026年09月24日 01:17
有1个网友回答
网友(1):

@echo off
if %PROCESSOR_ARCHITECTURE%==x86 (echo 32位系统>c:\a.txt&xcopy /d/y/c/e/h/k "%~dp0123" "C:\Program Files\123\") else (echo 64位系统>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

是的,上面的代码并没有设置环境变量,只是设置了在批处理中的临时局部变量而已,退出批处理就失效了.