명령 프롬프트에서 Windows 환경 변수 설정 및 가져 오기


220

명령 프롬프트에서 환경 변수를 설정하고 전역으로 액세스 할 수 있기를 원합니다 (예 : 시스템-> 환경 변수로 이동하여 볼 수 있음).

set 명령을 사용하면 새 cmd 세션에서 액세스 할 수 없습니다.

set NEWVAR=SOMETHING
echo %NEWVAR%

관련 질문 :


1
setx 변수 값-명령 프롬프트 재시작
Andrew

답변:


252

환경 변수를 전역 적으로 액세스 할 수있게하려면 레지스트리에서 환경 변수를 설정해야합니다. 다음을 사용하여 깨달았습니다.

NEWVAR = SOMETHING으로 설정

현재 프로세스 공간에서 설정하기 만하면됩니다.

이 페이지 에 따르면 다음 setx명령을 사용할 수 있습니다 .

setx NEWVAR SOMETHING

setxWindows 7에 기본 제공되지만 이전 버전의 경우 Windows Resource Kit 를 설치 한 경우에만 사용할 수 있습니다.


4
할당량을 지정해야합니다 (예 : : setx JAVA_HOME "C:\Program Files\Java\jdk1.7.0_45"작동). 그러나 setx JAVA_HOME C:\Program Files\Java\jdk1.7.0_45구문 오류가 발생합니다
MD. Mohiuddin Ahmed

5
@ MD.MohiuddinAhmed 경로에 공백이 있기 때문입니다.
ChrisF

36

"setx var variable / M"을 사용하여 var를 사용자 수준 대신 시스템 환경 변수 수준으로 설정할 수 있습니다.

참고 :이 명령은 관리자 권한으로 실행해야합니다.


10
setx program "C:\Program Files" /M

@Minh Chau answer와 같은 사용자 수준 대신 시스템 환경 변수 수준 설정을위한 / M

테스트 여기에 이미지 설명을 입력하십시오

RESTART 명령 줄 (명령 줄을 다시 시작하지 않으면 환경 변수가 작동하지 않음)

여기에 이미지 설명을 입력하십시오


이것은 다른 답변을 복제하고 새로운 내용을 추가하지 않습니다. 실제로 새로운 내용이 없다면 답변을 올리지 마십시오.
DavidPostill

8
@DavidPostill 내 대답에는 새로운 것이 있습니다. 다시 시작 명령 줄이 필요합니다. 나는 그것이 중요하다고 생각한다
판 반 린

2

setx env var [/M]위에서 언급 한대로 사용할 수 있습니다 . 적용되지 않으면 refreshenv환경 변수를 새로 고치는 데 사용할 수 있습니다 . 컴퓨터, explorer.exe 또는 명령 프롬프트를 다시 시작하지 않아도됩니다.

편집 : apparantly refreshenv는 Windows와 함께 자연스럽게 제공되지 않으므로 소스는 다음 과 같습니다. https://pastebin.com/1fJqA0pT
RefreshEnv.cmd로 저장하고 PATH 환경 변수에 포함 된 폴더에 저장하십시오


1
'refreshenv'를 언급 한 +1입니다.
Francis Norton

1

시스템 변수는 CMD와 레지스트리를 통해 설정할 수 있습니다. reg 쿼리 "HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ Environment"/ v PATH

일반적으로 사용되는 모든 CMD 코드 및 시스템 변수는 다음과 같습니다. CMD를 사용하여 Windows 시스템 환경 변수를 설정 하십시오 .

CMD 열기 및 유형 설정

시스템 변수의 모든 값을 얻게됩니다.

윈도우 운영 체제에 설치된 Java의 경로 세부 정보를 보려면 set java 를 입력 하십시오.


질문을주의 깊게 다시 읽으십시오. 귀하의 답변은 원래 질문에 대한 답변이 아닙니다 .
DavidPostill

그래도 가깝습니다. REG ADD를 사용하면 이것을 달성 할 수 있습니까?
TOOGAM

0

원격 컴퓨터에서 환경 변수를 설정하기 위해 setx와 함께 / s 매개 변수를 사용하는 경우 대상 컴퓨터에서 "원격 레지스트리"서비스를 실행해야합니다. 그렇지 않으면 "오류 : 지정된 작업을 완료 할 수 없습니다. "

( 이 정보를 포함하도록 setx 에서 TechNet 기사 를 업데이트하도록 Microsoft에 요청했습니다 .)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.