Shell 스크립트에서 전역 변수와 로컬 변수를 사용하는 방법
전역 변수(Global Variable)는 스크립트 어디에서나 접근 가능한 변수이며, 로컬 변수(Local Variable)는 특정 함수 또는 코드 블록 내에서만 접근 가능한 변수입니다.
전역 변수 사용 방법
- 전역 변수 선언: 변수명 앞에 아무런 특별한 선언 없이 변수를 사용하면 자동으로 전역 변수로 취급됩니다.
- 전역 변수 할당: 변수명=값 형식으로 전역변수에 값을 할당합니다.
- 예제
#!/bin/bash
# 전역변수 선언 및 할당
global_var="I am a global variable"
function some_function() {
# 함수 내에서 전역변수 사용 가능
echo "Inside function: $global_var"
}
echo "Outside function: $global_var"
some_function
로컬 변수 사용 방법
- 로컬 변수 선언: 변수명 앞에 local 키워드를 사용하여 로컬 변수로 선언합니다. 이렇게 선언한 변수는 해당 함수 내에서만 유효합니다.
- 로컬 변수 할당: 변수명=값 형식으로 로컬 변수에 값을 할당합니다.
- 예제
#!/bin/bash
function local_demo() {
# 로컬 변수 선언과 할당
local local_var="I am a local variable"
echo "Inside function: $local_var"
}
local_demo
# 로컬 변수는 함수 외부에서 사용할 수 없으므로 아래와 같은 구문은 에러를 발생시킵니다.
# echo "Outside function: $local_var"
위의 예제에서 볼 수 있듯이, 전역변수와 로컬 변수는 각각의 범위에서 사용되며, 전역 변수는 함수 내부에서도 접근 가능하고 함수 외부에서도 접근 가능합니다. 하지만 로컬 변수는 함수 내부에서만 유효하며, 함수 외부에서는 접근할 수 없습니다. 따라서 스크립트를 작성할 때 변수의 범위를 고려하여 사용해야 합니다.
'리눅스' 카테고리의 다른 글
| [draft] NGINX에서 특정 IP 주소를 허용하고 나머지 모든 IP 주소를 리다이렉트하도록 설정하는 방법 (0) | 2026.02.11 |
|---|---|
| [draft] PHP-FPM 로그 파일을 로테이션 설정하는 방법 (0) | 2026.02.11 |
| [draft] Redis 스탠드얼론(Standalone), 센티널(Sentinel), 클러스터(Cluster) 구성 방법 (0) | 2026.02.11 |
| [draft] 디스크의 속도를 측정하는 방법 (0) | 2026.02.11 |
| [draft] File Browser를 Docker 컨테이너로 올리고 사용하는 방법 (0) | 2026.02.11 |