본문으로 건너뛰기
개발 환경 설정 기초집LESSON 04

PATH와 환경 변수: 명령어가 어디서든 실행되는 이유

난이도입문
예상 시간40분
선수지식3강 PowerShell 기초

4강. PATH와 환경 변수: 명령어가 어디서든 실행되는 이유

1. 이번 강의에서 해결할 문제

설치 폴더에는 실행 파일이 있는데 명령을 찾지 못하거나 예상과 다른 버전이 실행됩니다. PATH의 검색 목록과 환경 변수 범위를 진단합니다.

2. 학습 목표

3. 핵심 개념

Windows는 PATH에 적힌 폴더를 앞에서부터 검색해 명령 이름과 맞는 실행 파일을 찾습니다. PowerShell의 Process 환경은 현재 창과 자식 프로세스에만 적용됩니다. User는 현재 사용자, Machine은 전체 컴퓨터 범위이며 Machine 변경에는 보통 관리자 권한이 필요합니다. 공식 설명은 PowerShell 환경 변수 문서에서 확인할 수 있습니다.

4. 단계별 실습

PowerShell · 실행 위치: 일반 PowerShell

$env:Path -split ';' | Where-Object { $_ } | Select-Object -Unique
[Environment]::GetEnvironmentVariable('Path', 'User') -split ';'
[Environment]::GetEnvironmentVariable('Path', 'Machine') -split ';'
$env:DEV_ENV_LAB = 'current-session-only'
$env:DEV_ENV_LAB

예상 결과: 현재 세션, User, Machine PATH 목록과 임시 변수 값이 표시됩니다. 새 PowerShell을 열면 DEV_ENV_LAB은 존재하지 않습니다. 관리자 권한은 필요하지 않습니다.

안전한 수정 원칙

  1. 설치 프로그램의 공식 PATH 옵션을 우선합니다.
  2. 실행 파일 자체가 아니라 실행 파일이 있는 폴더만 추가합니다.
  3. 이미 존재하거나 사용하지 않는 경로를 중복 추가하지 않습니다.
  4. 영구 수정 전 기존 User PATH를 기록하고 새 PowerShell에서 검증합니다.
macOS·Linux 차이

macOS와 Linux에서는 환경 변수 이름의 대소문자를 구분하고 PATH 항목 구분자로 세미콜론이 아닌 콜론(:)을 사용합니다. Shell 설정 파일을 수정하기 전 현재 Shell과 공식 배포판 문서를 확인하세요.

5. 명령어와 설정이 동작하는 이유

$env:는 현재 PowerShell 프로세스가 가진 환경 변수에 접근합니다. User와 Machine 값을 합친 결과가 새 프로세스의 PATH가 되며, 이미 열린 터미널은 설치 후 변경을 자동으로 받지 않을 수 있어 다시 열어야 합니다.

6. 자주 하는 실수와 해결법

7. 직접 실습

8. 이해 점검 질문 3개

9. 핵심 요약

MINI QUIZ

PATH와 환경 변수: 명령어가 어디서든 실행되는 이유 미니 퀴즈

선택 즉시 정답과 해설을 확인할 수 있습니다. 결과는 이 브라우저에만 저장됩니다.

0 / 2
  1. 문제 1“PATH와 환경 변수: 명령어가 어디서든 실행되는 이유” 내용을 실제 작업에 적용한 설명으로 가장 알맞은 것은 무엇인가요?
  2. 문제 2“PATH와 환경 변수: 명령어가 어디서든 실행되는 이유”에서 ‘PATH 전체를 새 문자열로 덮어씀’ 문제가 생겼습니다. 가장 알맞은 진단 또는 대응은 무엇인가요?
LESSON STATUS

학습을 마쳤나요?

직접 실습과 점검 질문까지 확인한 뒤 완료로 표시하세요.

4강. PATH와 환경 변수: 명령어가 어디서든 실행되는 이유 미완료 상태