[Linux] Shell Variables - 지역 변수와 환경 변수

Shell Variables는 스크립트 작성에 있어서 필수적인 요소입니다. 변수는 크게 지역 변수(local variable)와 환경 변수(environment variable) 두 가지로 구분되며, 각각의 용도와 범위가 다릅니다. 이번 글에서는 이 두 변수의 차이점을 실제 예제를 통해 비교해 보겠습니다. Shell Variables - 지역 변수 지역 변수는 현재 쉘 또는 특정 스크립트 내에서만 유효한 변수 입니다. 이 변수는 해당 프로세스 내부에서만 사용 가능하며, 자식 프로세스에는 전달되지 않습니다 . 지역 변수 생성 및 확인 지역 변수는 리눅스 터미널에서 아래와 같이 간단히 정의할 수 있습니다. [root@rhel84 ~]# color=blue 이 경우 color 라는 변수에 blue 라는 값이 저장됩니다. 해당 변수는 현재 쉘 세션 내에서만 유효하며, 자식 프로세스에서는 사용할 수 없습니다. 다음으로, echo 명령어를 사용해 변수 값을 확인할 수 있습니다. [root@rhel84 ~]# echo $color blue 또한, 아래와 같은 스크립트를 생성해 자식 프로세스 내에서 변수 인식 여부를 테스트할 수 있습니다. [root@rhel84 ~]# cat color.sh #!/bin/bash echo $color [root@rhel84 ~]# sh color.sh [root@rhel84 ~]# echo $color blue 스크립트 내에서는 변수가 출력되지 않는 것을 확인할 수 있습니다. 이는 color 변수가 지역 변수이기 때문입니다. 지역 변수 확인 명령어 지역 변수는 set 명령어를 통해 확인할 수 있습니다. 이 명령어는 지역 변수와 환경 변수를 구분 없이 모두 출력 합니다. 아래 예제는 color 라는 지역 변수가 등록되어 있는지 확인하는 방법입니다. [root@rhel84 ~]# set | grep ^color= color=blue 환경 변수 - Shell Variables 환경 변수는 시스템 전체에서 사용 ...