티스토리 뷰

셸 변수와 환경변수

 - 셸 변수는 셸의 환경을 설정하기 위한 값을 저장

  * 모든 변수와 값을 출력하기 위해 set 명령을 사용

 - 셸 변수

  * 현재 셸에서만 사용이 가능하고 서브 셸로는 전달되지 않음(지역변수)

 - 환경 변수

  * 현재 셸뿐만 아니라 서브 셸로도 전달(전역변수)

  * 보통 변수 이름으로 대문자를 사용함

  * 터미널 창을 열어 쉘을 시작하면 이미 많은 환경 변수가 설정되어 있음

  * 모든 환경 변수와 값을 출력하기 위해 printenv 명령을 사용

 - 변수 설정과 환경 변수로 만드는 방법
  * 변수=값
  * export 변수
 - 특정 환경 변수의 값을 확인하는 방법
  * printenv 변수
  * echo $변수는 모든 종류의 변수 값을 확인할 수 있음


자주 사용되는 환경 변수

변수

내용

HISTSIZE

1개 셸에서 저장되는 명령 히스토리 목록의 최대 개수로 기본 값은 1000

HOME

홈 디렉터리

MAIL

사용자의 메일박스에 해당하는 파일로 보통 /var/spool/mail/username

PATH

명령을 수행할 때 실행 파일을 찾기 위한 디렉터리 목록

PS1

쉘 프롬프트를 표시하기 위한 문자열

SHELL

사용 중인 기본 셸

PWD

현재 작업 디렉터리

USER

현재 사용자 계정


로그인과 셸의 환경 설정 파일

 - 로그인할 때 또는 셸을 시작할 때 자동으로 실행되는 명령을 저장한 파일

  * 시스템 환경 설정 파일과 사용자 환경 설정 파일이 있음

  * 셸의 종류에 따라 다른 이름의 파일을 사용함

  * bash 셸의 경우 다음과 같음

파일

설명

/etc/profile

모든 사용자에게 적용. 로그인할 때 가장 먼저 수행됨

PATH, MAIL, HISTSIZE 등 전역의 환경 변수가 설정됨

~/.bash_profile

로그인할 때 수행되며 개별 사용자에게 적용됨

보통 내부에서 ~/.bashrc를 실행

~/.bashrc

쉘을 시작할 때마다 수행되며 개별 사용자에게 적용됨

보통 내부에서 /etc/bashrc를 수행

/etc/bashrc

모든 사용자에게 적용. 쉘을 시작할 때마다 수행됨

PS1, 에일리어스 설정, umask를 사용한 접근권한의 초기값, 함수 등을 설정.

~/.bash_logout

로그아웃을 수행할 때 실행되는 스크립트 파일


공지사항
최근에 올라온 글
Total
Today
Yesterday