반응형
디렉토리 이동을 편하게 CDPATH 환경변수!
우리는 쉘 상에서 많은 작업을 하게 되는데 특정 프로그램을 인스톨 하거나
다른 디렉토리에서 작업한 다음에 완전히 다른 디렉토리로 빈번히 옮겨가야
하는 경우가 있다. 여기서는 이러한 작업을 보다 쉽게 해줄 수 있는 방법을
소개한다.
CDPATH환경변수(sh, ksh, bash), 또는 csh의 cdpath 쉘변수를 특정 디렉토리로
설정하면 현재 어느 디렉토리에 있는지에 상관없이 cdpath(CDPATH)에 지정되어
있는 디렉토리의 하위디렉토리명을 찾아서 그 디렉토리로 CWD(현재디렉토리)를
옮겨 준다. 예를 들어 보면 다음과 같이 CDPATH(cdpath)가 지정되어 있다고
가정하자.
% set cdpath=(~ ~/src /usr/local/etc)
보통 우리는 /usr/local/etc/httpd라는 디렉토리로 가기 위해 일일이
% cd /usr/local/etc/httpd
이렇게 해 주어야 하지만 cdpath를 위에처럼
설정해 놓으면 단지 다음과 같은 명령을 통해 그 디렉토리로 옮겨갈 수 있다.
% cd httpd
그리고 본쉘(bourne)에서의 CDPATH는 다음과 같이 설정한다.
$ CDPATH=:$HOME:$HOME/src:/usr/local/etc
$ export CDPATH
위에서 CDPATH 지정할때 앞부분에 ':'를 넣었는데 이것은 PATH변수를 지정할때는
없는 것인데, 현재 디렉토리를 지칭한다.
우리는 쉘 상에서 많은 작업을 하게 되는데 특정 프로그램을 인스톨 하거나
다른 디렉토리에서 작업한 다음에 완전히 다른 디렉토리로 빈번히 옮겨가야
하는 경우가 있다. 여기서는 이러한 작업을 보다 쉽게 해줄 수 있는 방법을
소개한다.
CDPATH환경변수(sh, ksh, bash), 또는 csh의 cdpath 쉘변수를 특정 디렉토리로
설정하면 현재 어느 디렉토리에 있는지에 상관없이 cdpath(CDPATH)에 지정되어
있는 디렉토리의 하위디렉토리명을 찾아서 그 디렉토리로 CWD(현재디렉토리)를
옮겨 준다. 예를 들어 보면 다음과 같이 CDPATH(cdpath)가 지정되어 있다고
가정하자.
% set cdpath=(~ ~/src /usr/local/etc)
보통 우리는 /usr/local/etc/httpd라는 디렉토리로 가기 위해 일일이
% cd /usr/local/etc/httpd
이렇게 해 주어야 하지만 cdpath를 위에처럼
설정해 놓으면 단지 다음과 같은 명령을 통해 그 디렉토리로 옮겨갈 수 있다.
% cd httpd
그리고 본쉘(bourne)에서의 CDPATH는 다음과 같이 설정한다.
$ CDPATH=:$HOME:$HOME/src:/usr/local/etc
$ export CDPATH
위에서 CDPATH 지정할때 앞부분에 ':'를 넣었는데 이것은 PATH변수를 지정할때는
없는 것인데, 현재 디렉토리를 지칭한다.
반응형
'Solaris' 카테고리의 다른 글
ssh -> ssh2 로 바꾸자 (1) | 2006.02.21 |
---|---|
[UNIX] 특정 사용자의 모든 프로세스를 죽이려면? (2) | 2006.02.21 |
[UNIX] 환경변수의 설정 (1) | 2006.02.21 |
[UNIX] 사용자마다 특정크기만큼만 하드디스크를 할당하는 방법 (1) | 2006.02.21 |
[UNIX] man(매뉴얼) 페이지를 깨끗하게 프린트하기 (1) | 2006.02.21 |