$ fname=john
$ score=100
# value 값 확인
$ echo $fname
john
# set : 모든 변수명 표시 (grep를 통해 필터링 필요)
$ set | grep name # name 을 포함한 문구 검색
# fname 변수 제거
$ unset fname
$ export NAME=Lee
$ echo $NAME
$ unset my_var (#,$를 사용하지 않는다)
전역 환경변수 경우 자식 프로세스에서 전역 환경변수를 unset 해도 이는 자식 프로세스에만 적용
해당 전역 환경 변수는 부모 프로세스에서 계속 사용할 수 있다.
환경 변수 달러 기호 사용 유의점
# 환경 변수만 표시
$ env $HOME
$ printenv HOME
# 알아둬야 할 환경 변수
$PATH 실행 파일을 찾을 경로
$HOME 현재 로그인한 사용자의 홈 디렉토리 경로
$LANG 쉘에서 사용하는 언어
$SHELL 로그인 시 사용하는 쉘 실행 파일 경로
$PS1 프롬프트 구조 정보\
$HISTSIZE 히스토리 파일에 저장되는 명령어의 수
$HISTFILE 히스토리 파일의 경로
$TMOUT 세션 유지 시간 #(보안상 설정해두는 것이 좋음, Ex) TMOUT=[숫자] (초 단위))
# 그 외 미리 선언(예약) 되어 있는 환경변수
<<'END'
1) HOME : 사용자의 홈디렉토리
2) PATH : 실행파일을 찾는 경로
3) LANG : 프로그램 사용시 기본 지원되는 언어
4) PWD : 사용자의 현재 작업하는 디렉토리
5) TERM : 로긴 터미널 타입
6) SHELL : 로그인해서 사용하는 쉘
7) USER : 사용자의 이름
8) DISPLAY : X 디스플레이 이름
9) VISUAL : visual 편집기의 이름
10) EDITOR : 기본 편집기의 이름
11) COLUMNS : 현재 터미널이나 윈도우 터미널의 컬럼수
12) PS1 : 명령프롬프트변수
13) PS2 : 2차 명령프롬프트이다. 명령행에서 \를 사용하여 명령행을 연장했을 때 나타난다.
14) BASH : 사용하는 bash 쉘의 경로
15) BASH_VERSION : bash의 버전
16) HISTFILE : history 파일의 경로
17) HISTFILESIZE : history 파일의 크기
18) HISTSIZE : history에 저장되는 갯수
19) HISTCONTROL : 중복되어지는 명령에 대한 기록 유무를 지정하는 변수이다.
20) HOSTNAME : 호스트의 이름
21) LINES : 터미널의 라인 수
22) LOGNAME :로그인이름
23) LS_COLORS : ls 명령의 색상관련 옵션
24) MAIL : 메일을 보관하는 경로
25) MAILCHECK : 메일확인시간
26) OSTYPE : 운영체제 타입
27) SHLVL :쉘의 레벨
28) TERM :터미널종류
29) UID : 사용자의 UID
30) USERNAME : 사용자이름
END
https://neul-carpediem.tistory.com/78