Windows 배치 파일에서 시스템 환경 변수를 설정하시겠습니까?
Windows 7(또는 XP)의 명령 프롬프트에서 시스템 수준의 환경 변수를 설정할 수 있습니까?고급 명령 프롬프트에서 실행 중입니다.
사용할 때set
명령(set name=value
), 환경 변수는 명령 프롬프트 세션에만 유효한 것 같습니다.
XP 지원 도구(XP CD에서 설치할 수 있음)는 다음과 같은 프로그램과 함께 제공됩니다.setx.exe
:
C:\Program Files\Support Tools>setx /?
SETX: This program is used to set values in the environment
of the machine or currently logged on user using one of three modes.
1) Command Line Mode: setx variable value [-m]
Optional Switches:
-m Set value in the Machine environment. Default is User.
...
For more information and example use: SETX -i
Windows 7(윈도우 7)에는 실제로setx
표준 설치의 일부로.
JAVA_HOME을 설정하는 방법에 대한 간단한 예setx.exe
명령줄에서:
setx JAVA_HOME "C:\Program Files (x86)\Java\jdk1.7.0_04"
현재 사용자에 대한 환경 변수 "JAVA_HOME"을 설정합니다.모든 사용자에 대해 변수를 설정하려면 "/m"(또는 -m, Windows 7 이전 버전) 옵션을 사용해야 합니다.
다음은 예입니다.
setx /m JAVA_HOME "C:\Program Files (x86)\Java\jdk1.7.0_04"
참고: 이 명령은 관리자 권한으로 실행해야 합니다.
참고: 명령줄 관리 창에서 setx 명령을 실행해야 합니다.
SETX를 통해 변수를 설정하는 경우 이 변수나 변수의 변경 사항을 즉시 사용할 수 없습니다.사용할 프로세스를 다시 시작해야 합니다.
다음 순서를 사용하여 설정 프로세스에서도 직접 설정합니다(글로벌 변수를 설정한 후 일부 init 작업을 수행하는 스크립트에서 완벽하게 작동).
SET XYZ=test
SETX XYZ test
XP의 경우 "RAPIDEE"(Rapid Environment Editor)라는 (무료/기부 소프트웨어) 도구를 사용했지만, Win 7에는 SETX가 확실히 충분합니다(이전에는 이에 대해 몰랐습니다).
시스템 변수는 CMD 및 레지스트리를 통해 설정할 수 있습니다. 예를 들어 reg 쿼리 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\"세션 관리자\환경" /vPATH
일반적으로 사용되는 모든 CMD 코드와 시스템 변수는 CMD를 사용하여 윈도우즈 시스템 환경 변수를 설정하십시오.
CMD를 열고 Set을 입력합니다.
시스템 변수의 모든 값을 얻을 수 있습니다.
set java를 입력하여 창 OS에 설치된 java의 경로 세부 정보를 확인합니다.
SetX는 대부분의 경우에 필요한 명령입니다.REG 또는 REGEDIT 사용이 가능하지만
레지스트리 편집 명령을 사용하면 SetX 명령의 일부 제한(다른 데이터 유형, 다음을 포함하는 변수)을 피할 수 있습니다.=
그들의 이름 등으로
@echo off
:: requires admin elevated permissions
::setting system variable
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v MyVar /D MyVal
::expandable variable
REG ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /T REG_EXPAND_SZ /v MyVar /D MyVal
:: does not require admin permissions
::setting user variable
REG ADD "HKEY_CURRENT_USER\Environment" /v =C: /D "C:\\test"
REG는 순수 레지스트리 클라이언트이지만 하드 코딩된 값(또는 임시 파일 생성)만 사용할 수 있지만 REGEDIT로 데이터를 가져올 수도 있습니다.데이터가 입니다(" "" "" "" " " " " " " " " " " "로 ..bat
그것을 일괄적으로 주의하시오.;
에서 주로사 무구기다 니됩시에서 구분 됩니다..reg
파일):
REGEDIT4
; @ECHO OFF
; CLS
; REGEDIT.EXE /S "%~f0"
; EXIT
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]
"SystemVariable"="GlobalValue"
[HKEY_CURRENT_USER\Environment]
"UserVariable"="SomeValue"
변수를 삭제해야 할 경우를 대비하여 Vincent Fatica의 SETENV를 http://barnyard.syr.edu/ ~vetatica에서 사용할 수 있습니다.정확히 최신은 아니지만('98') Windows 7 x 64에서 여전히 작동합니다.
언급URL : https://stackoverflow.com/questions/3803581/setting-a-system-environment-variable-from-a-windows-batch-file
'programing' 카테고리의 다른 글
jQuery 연기 및 약속 - .then() vs.done() (0) | 2023.06.01 |
---|---|
테이블 셀에서 CSS 텍스트 오버플로? (0) | 2023.06.01 |
예외를 발생시키지 않고 Ruby에서 현재 스택 추적 가져오기 (0) | 2023.06.01 |
Git, 오리진/마스터를 커밋으로 재설정하는 방법은 무엇입니까? (0) | 2023.06.01 |
원격 사이트에서 사용할 수 있는 모든 버전의 보석을 나열하려면 어떻게 해야 합니까? (0) | 2023.06.01 |