windows:: powershell로 윈도우 사용자(시스템) 환경변수 추가 _Reload

 

 


전체(사용자+시스템) 환경변수 RELOAD

$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")

#

 

 

사용자 환경 변수에 항목추가 및 RELOAD

# Set Path
[System.Environment]::SetEnvironmentVariable('Path', $env:USERPROFILE + "\AppData\Roaming\npm;" + [System.Environment]::GetEnvironmentVariable('Path', "User"), "User")
 
# RELOAD
$env:Path = [System.Environment]::GetEnvironmentVariable("Path")


# 현재 설정을 화면에 출력
Write-Output "$env:Path"

 

 

 


 

 

 

 

 

# 시스템 환경 변수 확인
$env:path

# 시스템 환경 변수 추가
$Env:Path += "; 경로"

 

# System.Environment Method 사용법
# 'Foo' 항목에 'Bar' 값을 설정


# Read user-specific environment variable
$userPaths = [System.Environment]::GetEnvironmentVariable("BAR", [System.EnvironmentVariableTarget]::User)

# Set USER-specific environment variable
[System.Environment]::SetEnvironmentVariable("BAR", "barbar", [System.EnvironmentVariableTarget]::User)

-------------------------------

# Read system-wide environment variable
$systemPaths = [System.Environment]::GetEnvironmentVariable("FOO", [System.EnvironmentVariableTarget]::Machine)

# Set system-wide environment variable
[System.Environment]::SetEnvironmentVariable("FOO", "foobar", [System.EnvironmentVariableTarget]::Machine)

https://learn.microsoft.com/ko-kr/powershell/module/microsoft.powershell.core/about/about_environment_variables?view=powershell-7.2#using-the-systemenvironment-methods 

 

 

 


분명 pyenv 환경에서 pip 명령어로 필요한 라이브러리를 설치했는데 실행이 안된다.

예를 들어 xlwings를 하고 확인을 한다.

pyenv which xlwings

설치 위치를 표시되는 것을 보면 설치는 되어 있다

 

 

 

 

시스템 속성에 경로가 빠져있어서 이를 추가해 주어야 한다.

-환경변수-에서 따로 추가해도 되고 powershell 명령어로 기억해 두면 편하다

 

 

# 위에서 찾은 경로를 $Env:Path += "; xxx " 따옴표 사이에 추가하자
# pyenv 관련명령어를 위한 경로
# pip 등을 실행하기 위한 경로

# 방법1 >> 기존 $env:Path에 "+="문구를 통해 .pyenv 경로를 추가하는 것
$Env:Path += ";%USERPROFILE%\.pyenv\pyenv-win\bin; %USERPROFILE%\.pyenv\pyenv-win\shims"




# 방법2 - System.Environment Method 사용
# "마지막 문구인 "+ [System.Environment]::GetEnvironmentVariable('path', "User")" << 기존경로
# 를 불러온 다음 .pyenv 경로와 합쳐서 설정하는 방법
# 주의! 마지막 문구를 넣지 않으면 기존 경로가 날라감

[System.Environment]::SetEnvironmentVariable('Path', $env:USERPROFILE + "\.pyenv\pyenv-win\bin;" + $env:USERPROFILE + "\.pyenv\pyenv-win\shims;" + [System.Environment]::GetEnvironmentVariable('path', "User"))

**
$env:Path = [System.Environment]::SetEnvironmentVariable('Path', $env:USERPROFILE + "\.pyenv\pyenv-win\bin;" + $env:USERPROFILE + "\.pyenv\pyenv-win\shims;" + [System.Environment]::GetEnvironmentVariable('path', "User"))


# Reload environment variables 변수 설정후, powershell 다시 끌 필요없이 적용가능
$env:Path = [System.Environment]::GetEnvironmentVariable("Path", [System.EnvironmentVariableTarget]::User)
$env:Path = [System.Environment]::GetEnvironmentVariable("Path")


# RELOAD
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")

 

 

 

 

그럼 이제 정상적으로 명령어 사용가능

 

 

 

 

 

 



_

 

반응형