Menu
Coddy logo textTech

변수 내보내기

Coddy Terminal 여정의 기초 섹션에 포함된 레슨 — 82개 중 63번째.

MY_NAME="Alice" 같은 변수를 설정하면, 이는 현재 셸에만 존재합니다. 스크립트를 실행하거나 다른 프로그램을 시작하면 그 변수는 해당 프로그램에서 사용할 수 없습니다. 여기서 export가 등장합니다.

export 명령어는 변수를 모든 자식 프로세스에서 사용할 수 있게 만듭니다. 즉, 현재 셸에서 시작된 프로그램이나 스크립트가 이를 접근할 수 있다는 의미입니다:

export MY_NAME="Alice"

기존 변수를 내보낼 수도 있습니다:

MY_NAME="Alice"
export MY_NAME

두 가지 접근 방식 모두 동일한 결과를 달성합니다. 변수는 이후에 실행하는 모든 명령어에 전달되는 환경의 일부가 됩니다.

차이점을 확인하려면, $MY_NAME을 사용하려고 시도하는 스크립트를 실행해 보세요.

export가 없으면 스크립트는 아무것도 보지 못합니다. export가 있으면 스크립트가 해당 값에 접근할 수 있습니다.

이것이 바로 PATHHOME 같은 시스템 변수가 기본적으로 export되는 이유입니다. 이들은 실행하는 모든 프로그램에서 사용 가능해야 합니다.

env 출력에 나타나는지 확인하여 변수가 내보내졌는지 확인할 수 있습니다:

env | grep MY_NAME

내보낸 변수는 터미널을 닫을 때 여전히 사라집니다. 다음 강의에서는 세션 간에 변수를 유지하는 방법에 대해 다룹니다.

challenge icon

챌린지

쉬움

PROJECT라는 변수를 terminal-course 값으로 export한 후, env 출력을 필터링하여 새 변수만 표시되도록 export되었는지 확인하세요.

한 줄로 export를 사용하여 변수를 한 번에 설정하고 export할 수 있으며, envgrep을 통해 파이프하여 찾을 수 있습니다.

출력은 다음과 같아야 합니다:

PROJECT=terminal-course

힌트: 먼저 export PROJECT="terminal-course"를 실행한 후, env | grep PROJECT를 사용하여 환경에 나타나는지 확인하세요.

치트 시트

export 명령어는 변수를 자식 프로세스(현재 셸에서 시작된 프로그램 또는 스크립트)에서 사용할 수 있게 합니다:

export MY_NAME="Alice"

기존 변수를 export할 수도 있습니다:

MY_NAME="Alice"
export MY_NAME

export 없이 변수는 현재 셸에만 존재하며, 실행하는 스크립트나 프로그램에서 접근할 수 없습니다.

변수가 export되었는지 확인하려면 env 출력에 나타나는지 확인하세요:

env | grep MY_NAME

export된 변수는 터미널을 닫으면 사라집니다.

직접 해보기

터미널
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨