명령 줄에서 환경 변수를 추가 및 / 또는 수정 및 / 또는 삭제하는 편리한 방법을 찾고 있습니다. 특히 cmd.exe에 몇 가지 변수를 추가해야 할 경우가 있습니다.
누군가가 %PATH%
변수 를 수정하는 (즉 : 새 디렉토리를 추가하는) 비 GUI 방식을 보여 주면 감사 할 것 입니다.
cmd
세션 기간 동안 만이 아니라 변경 사항이 영구적이어야합니다 .
명령 줄에서 환경 변수를 추가 및 / 또는 수정 및 / 또는 삭제하는 편리한 방법을 찾고 있습니다. 특히 cmd.exe에 몇 가지 변수를 추가해야 할 경우가 있습니다.
누군가가 %PATH%
변수 를 수정하는 (즉 : 새 디렉토리를 추가하는) 비 GUI 방식을 보여 주면 감사 할 것 입니다.
cmd
세션 기간 동안 만이 아니라 변경 사항이 영구적이어야합니다 .
답변:
reg 명령으로 레지스트리 변수를 직접 조작하는 구식 방법은 돈이었습니다. 방법은 다음과 같습니다.
reg add HKCU\Environment /v PATH /d "%addonpath%;%path%" /f
다음과 같은 apath.bat라는 한 줄 스크립트에 넣습니다.
@echo off
reg add HKCU\Environment /v PATH /d "%~dp0;%path%" /f
그런 다음 스크립트를 호출 할 때 추가 할 새 디렉토리의 경로 만 입력하면됩니다.
예 : apath.bat % addonpath %
Hinch가 옳지 만. Vista 이상을 사용하는 경우 가장 좋은 방법은 레지스트리를 직접 조작 할 수있는 reg 명령을 사용하여 레지스트리를 직접 조작 할 위험없이 환경 변수를 전파 할 수 있도록 설계된 SETX 명령을 사용하는 것입니다. ENV 변수를 즉시 사용할 수있을 정도로 조작하십시오.
setx를 사용할 수 있습니다.
사용자 변수 :
SETX PATH "%PATH%;C:\MyDir"
시스템 변수 :
SETX PATH "%PATH%;C:\MyDir" /M
echo %PATH%
과 같이 결합 된 것을 볼 수 있습니다 <system path>;<user path>
. 따라서 첫 번째 명령은 시스템 경로의 현재 항목을 사용자 경로에 표시하고 (나쁘지 않음) 두 번째 명령은 사용자 경로의 현재 항목을 시스템 경로에 표시합니다 (허용되지 않음).
HKEY_CURRENT_USER\Software\Microsoft\Command Processor\Autorun
레지스트리 키를 사용하여 배치 파일을 가리키면 비전 설정 대화 상자를 탐색하지 않고 반영구적으로 변경할 수 있습니다.
(제어판, 시스템, 고급, 환경 변수, PATH에서와 같이) GUI를 사용하지 않으려면 REG
을 설정 하는 데 사용할 수 있습니다 HKCU\Environment\PATH
.
%PATH%
REG ADD HKCU\Environment /v PATH /t REG\_EXPAND\_SZ /d "%PATH%" /f
/f
기존 값 덮어 쓰기 힘은 당신이 대화 형으로 질문에 대답 할 필요가 없습니다.
편집 : %PATH%
인용해야합니다.
편집 : 적용하기 전에 재부팅 또는 다시 로그인해야 할 수도 있습니다. GUI에서 변경하는 동안 새 cmd.exe
세션의 경우 즉시 적용 됩니다.
참조 : http://support.microsoft.com/kb/104011
참조에서 언급했듯이 일부 코드를 작성하려면 WM_SETTINGCHANGE를 보낼 수 있으며 로그인 / 로그 아웃 요구 사항을 피해야합니다.
REG QUERY HKCU\Environment /v PATH
.
현재 cmd.exe 프로세스에서 경로를 쉽게 변경할 수 있습니다.
PATH c:\MyNewDirectory;%PATH%
PATH 명령에 대한 도움말을 보려면 언제든지 HELP PATH를 수행 할 수 있습니다.
시스템 전체에서 영구적으로 영구적으로 변경하려면 시스템 제어판 (WinXP의 경우 내 컴퓨터-> 속성-> 고급-> 환경 변수)을 사용해야합니다. 설정은 Explorer 셸의 GUI 프로그램을 포함하여 전체 시스템에 영향을줍니다.
cmd.exe
셸 에서 이러한 변경 사항 만 필요한 경우 cmd.exe 창을 시작할 때마다 변경 내용 을 설정하는 배치 파일을 실행할 수 있습니다. Phoshi의 대답은 을 언급 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\Autorun
필요하면 명령 줄에서 작은 변경을 쉽게하고, 다시 실행 - 훌륭한 옵션처럼 보인다. 그러나 이것은 GUI 창이나 탐색기 셸에는 영향을 미치지 않습니다.
실제로 Sysinternals 가이를 수행 할 수있는 유틸리티가 없다는 사실에 놀랐습니다 . 다른 PStools 가 그것을 할 수 있습니까?
이 작업을 수행하는 많은 방법이 있습니다. REG ADD는 하나 또는 REG IMPORT (다른 컴퓨터에서 내 보낸 .REG 파일 사용)입니다. SETX / M은 또 다른 것입니다. 그룹 정책 기본 설정 (대량의 컴퓨터에 가장 쉬운 방법)을 사용하여 푸시 할 수도 있습니다.
여기에 언급되지 않은 또 다른 생각은 제어판을 실행하여 자동 입력하는 자동 단축 키 스크립트를 작성하는 것입니다. 이미 AHK 사용자 인 경우 잘 작동합니다 :-)
https://autohotkey.com/board/topic/63210-modify-system-path-gui/
hklm / system / currentcontrolset001 / control / session manager / environment : path key 편집은 어떻습니까? 그러나 동일한 키는 hklm / system / currentcontrolset002 및 hklm / system / currentcontrolset에 있습니다. /programming/3304463/how-do-i-modify-the-path-environment-variable-when-running-an-inno-setup-install에 따르면 이것이 올바른 것으로 보입니다.