쉘이 사용하는 변수로는 쉘 변수와 환경 변수가 있음.
쉘 변수
- 현재 쉘에서만 사용, 서브 쉘로는 전달되지 않음
- 일종의 지역변수라고 생각하면 됨.
환경변수
- 현재 쉘 뿐만이 아니라 서브 쉘로도 전달.
- 일종의 전역변수라고 생각하면 됨.
전체 변수 출력하기 (set, env) |
- 쉘의 변수를 출력하는 명령 set, env - set -> 쉘 변수와 환경변수 모두 출력 -> 변수 뿐만 아니라 함수로 정의된 것들을 모두 출력 - env -> 환경변수만 출력 -> 일반적으로 환경 변수의 이름은 대문자를 사용. 소문자로 지정해도 문제는 없지만 관습적으로 대문자를 사용. |
주요 환경 변수
환경변수 |
의미 |
HISTSIZE |
히스토리 저장 크기 |
HOME |
사용자 홈 디렉터리의 절대 경로 |
LANG |
사용하는 언어 |
LOGNAME |
사용자 계정 이름 |
PATH |
명령을 탐색할 경로 |
PWD |
작업 디렉터리 절대 경로 |
SHELL |
로그인 쉘 |
쉘 변수 및 환경 변수 설정 및 출력하기
- 변수 이름과 문자열 사이에 공백이 있어서는 안됨
- 변수의 값을 출력할 때는 변수 이름 앞에 특수 문자 '$'를 붙여야 함.
쉘 변수 설정 |
- 형식 : 변수 이름=문자열 - 사용 예 : SOME=test ex) user@ubuntu:~/linux_ex/ch4$ SOME=test user@ubuntu:~/linux_ex/ch4$ echo $SOME test user@ubuntu:~/linux_ex/ch4$ |
환경 변수 설정 |
- 환경 변수를 설정하려면 먼저 쉘 변수를 정의한 후, export 명령을 사용하여 이를 환경변수로 바꾸면 됨(export는 쉘 내장 명령) |
export |
- 기능 : 지정한 쉘 변수를 환경 변수로 바꿈. - 형식 : export [-n] [쉘 변수] - 옵션 : -n => 환경 변수를 쉘 변수로 바꿈. - 사용 예 : export, export SOME, export SOM=test ex1) user@ubuntu:~/linux_ex/ch4$ export SOME user@ubuntu:~/linux_ex/ch4$ env ... ... SOME=text ... ... user@ubunutu:~/linux_ex/ch4$ ex2) 변수를 설정하면서 바로 export 명령을 사용하여 한번에 환경변수로 user@ubnutu:~/linux_ex/ch4$ export SOME1=text1 user@ubuntu:~/liunx_ex/ch4$ echo $SOME1 test1 user@ubunut:~/linux_ex/ch4$ |
환경 변수를 쉘 변수로 바꾸기 => export -n |
- export 명령을 사용하여 환경 변수로 전환했던 쉘 변수를 다시 쉘 변수로 바꾸려면 export -n 명령을 사용하면 됨. ex) user@ubuntu:~/linux_ex/ch4$ export -n SOME1 |
변수 해제하기
- 정의된 변수를 해제할 대는 unset 명령을 이용.
unset |
- 기능 : 지정한 변수를 해제함. - 형식 : unset 변수 - 사용 예 : unset SOME ex) user@ubuntu:~/linux_ex/ch4$ unset SOME |
'OS > Linux - Ubuntu' 카테고리의 다른 글
[Linux - 리눅스] 리눅스 파일, 디렉터리 종류 및 특징 (0) | 2015.01.02 |
---|---|
[Linux - 리눅스] Linux 구조 및 기본 명령어 (0) | 2015.01.02 |
[Linux - 리눅스] 입출력 장치, 파일 디스크립터(File Descriptor), 리다이렉션(Redirection) (0) | 2014.12.25 |
[Linux - 리눅스] 쉘의 종류 및 변경, 특수 문자 사용하기 (0) | 2014.12.24 |
[Linux - 리눅스] vi 환경설정 (0) | 2014.12.24 |