윈 도 우 CMD 파일로 윈도우 비트 구분하고싶습니다.
2019.07.03 19:48
검색해보니 비트 구분하는방법은 여러가지가 있던데요..
if exist %windir%\SysWOW64 (
set WinBit=64
) else (
set WinBit=32
)
또는
echo %PROCESSOR_ARCHITECTURE%
이런 명어들이 나오는데요..
윈도우10,7 구분없이.. 비트 구분해서 비트별로
아래명령어로 방화벽 등록하려고 합니다.
netsh advfirewall firewall add rule name=
방화벽 예외등록하려는 프로그램이 비트별로 파일위치가 다릅니다.
cmd 파일을 어떻게 작성하면 될까요?
댓글 [4]
-
suk 2019.07.03 21:23
-
포토엔유 2019.07.03 22:06
항상 빠른 댓글 감사합니다..
if /i %PROCESSOR_ARCHITECTURE% equ x86
if /i %PROCESSOR_ARCHITECTURE% neq x86
참일경우 와 아닐경우 구분(32비트64비트) 해서 goto 문을 적용하려면 어떻게 해야할까요??
-
suk 2019.07.03 22:21
if /i %PROCESSOR_ARCHITECTURE% equ x86 goto :x86
if /i %PROCESSOR_ARCHITECTURE% neq x86 goto :x64
이렇게 간단하게 하셔도 됩니다.
질문에서 방화벽 예외 등록하신다고 하셨는데요. 32비트와 64비트 프로그램 경로가 다르다고...그런 경우는 그냥 뒤에 나열하시면 됩니다
if /i %PROCESSOR_ARCHITECTURE% equ x86 netsh advfirewall firewall add rule name= (32비트인 경우)
if /i %PROCESSOR_ARCHITECTURE% neq x86 netsh advfirewall firewall add rule name= (64비트인 경우)
명령어가 한줄이면 위와 같이 뒤에 쓰시면 되고, 프로그램들이 많으신 경우는 별도로 goto 방식으로 하시면 될 겁니다
( ) 괄호 방식으로 전부 나열하는 방법도 있습니다
원래 bat 파일은 다양한 방식이 가능합니다. 정해진 답이 없는 경우가 많고, 개인 취향도 많이 작용합니다
-
포토엔유 2019.07.03 22:24
구글 검색해보니 비슷한 답이 있는거 같네요..
if "%PROCESSOR_ARCHITECTURE%"=="AMD64" goto 64BIT
echo. 32-bit OSpause
goto END:64BIT
echo. 64-bit OS
pause
exit:END
exit중간에 원하는 값을 넣으면 되겠네요..
검색해서 찾아봤는데.. suk님 방법이 더 쉽고 간결하겠네요..
번호 | 제목 | 글쓴이 | 조회 | 등록일 |
---|---|---|---|---|
[공지] | 질문과 답변 게시판 이용간 유의사항 | gooddew | - | - |
93992 | 윈 도 우| 시만텍 엔드포인트 설치후 윈도우 정상 부팅 불능 [2] | 한스 | 277 | 07-02 |
93991 | 윈 도 우| 윈11 22H2 쓰고 싶습니다. [7] | 내가사는이유 | 1062 | 07-02 |
93990 | 기 타| 비디오 변환 [2] | 홍낄똥 | 355 | 07-02 |
93989 | 윈 도 우| Windows11 22H2 에서 한글2022 실행불가현상에 대해?? [5] | 윈도우스타 | 905 | 07-02 |
93988 | 윈 도 우| rufus 오류문의 [1] | 3561 | 586 | 07-02 |
93987 | 윈 도 우| windows 10 휴대폰 연결 [5] | 어차피 | 481 | 07-01 |
93986 | 윈 도 우| Windows 10 21H2 ISO 뼈대문의 | 3561 | 365 | 07-01 |
93985 | 윈 도 우| 윈도우 11.22621.169 업뎃 후 이상한 것-해결책 아시는 분 [1] | 타천사둘리 | 445 | 07-01 |
93984 | 윈 도 우| 실컴에서 PE처럼 바탕화면 아이콘 거두기/뿌리기 가능할까요? | 타천사둘리 | 140 | 07-01 |
93983 | 윈 도 우| 파일명 확장뒤에 ugkmrqu 붙었습니다.. ㅠㅠ [4] | Alpha | 516 | 07-01 |
93982 | 소프트웨어| ventoy는 내장하드에는 안되나요? [2] | brucex | 371 | 07-01 |
93981 | 소프트웨어| ESET Endpoint Security 실행 중인데 웨이브 시청중 화면 ... [4] | 어쭈 | 284 | 07-01 |
93980 | 윈 도 우| 알림창에 이건 못 없애나요? [4] | 타천사둘리 | 448 | 07-01 |
93979 | 윈 도 우| 크리스탈 디스크 인포 돌리니 C드라이브 밖에 안나와요 RAI... [4] | 크리스 | 360 | 07-01 |
93978 | 하드웨어| 동영상 인코딩에 최적화된 CPU 찾습니다. [19] | billy | 954 | 07-01 |
93977 | 기 타| 바탕화면 아이콘 자리가 이동됩니다. [4] | Pureunsan | 686 | 06-30 |
93976 | 윈 도 우| 윈도우10 시스템 복원지점이 계속 사라집니다 [3] | 송림 | 523 | 06-30 |
93975 | 소프트웨어| ACDSee 한글패치 [3] | 암행 | 785 | 06-30 |
93974 | 소프트웨어| defender를 멈추는 방법? [10] | ksire | 1057 | 06-29 |
93973 | 윈 도 우| 윈도우 오피스 어떤가요? [5] | 해중이 | 886 | 06-29 |
ms 순정이라면 SysWOW64 폴더 유무로 구분이 됩니다만...
가끔 보면 32비트 윈도인데도 SysWOW64 폴더가 있더군요.
이런 경우까지 감안하면 폴더보다는 윈도의 set 환경 변수에 있는 %PROCESSOR_ARCHITECTURE%가 나을 겁니다
amd64가 64비트 윈도인 경우 나오는데요. amd64 를 사용하면 CPU가 amd가 아니고 인텔이라는 분들이 계시더군요;
그래서 32비트 윈도인 x86을 구분하는데 사용합니다. 그리고 개인적으로는 else 보다는 그냥 하나씩 나열합니다
if /i %PROCESSOR_ARCHITECTURE% equ x86 32비트입니다. equ는 같다는 뜻 입니다
if /i %PROCESSOR_ARCHITECTURE% neq x86 64비트입니다. neq는 같지 않다 = 다르다 입니다.