절대경로와 상대경로
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,252 조회
- 0 추천
- 목록
본문
절대경로와 상대경로
리눅스에서 디렉토리 경로(PATH)에는 두가지 의미가 있다.
상대경로와 절대경로가 그것이다.
상대경로란 현재 위치를 기준으로 지정하는 경로를 의미한다.
절대경로란 현재위치와는 상관없이 최상위경로인 /를 기준으로 지정하는 경로를 의미한다.
따라서 cd명령으로 특정 위치로 이동하려고 할 때에는 절대경로로 지정하는 방법도 있고, 상대경로로 지정하는 방법도 있다.
다음 .과 ..에 대한 의미를 보자.
. : 점한개, 현재위치를 의미함
.. : 점두개, 현재위치의
한단계 상위위치를 의미함
다음은 상대경로를 이용하여 현재 위치를 변경한 예이다.
앞의 예와 비교해 보면 좋을 것 같다.
[root@sulinux local]#pwd /usr/local [root@sulinux local]# [root@sulinux local]#cd ../bin/ [root@sulinux bin]# [root@sulinux bin]#pwd /usr/bin [root@sulinux bin]# [root@sulinux bin]#cd ../sbin/ [root@sulinux sbin]# [root@sulinux sbin]#pwd /usr/sbin [root@sulinux sbin]# |
첫번째, /usr/local에 위치해 있다가 “cd ../bin/”이라는 상대경로를 지정하여 /usr/bin디렉토리로 이동하였다.
그리고 /usr/bin에서 “cd ../sbin/”라는 상대경로를 지정하여 /usr/sbin으로 이동하였다.
여기서 “../bin”이란 현재 위치의 한단계 상위디렉토리에 있는 bin이라는 디렉토리를 의미한다.
그리고 “../sbin”이란 현재 디렉토리에서 한단계 상위디렉토리인 sbin이라는 디렉토리를 의미한다.
그렇다면 다음 예들은 상대경로로 지정하는 또 다른 다양한 방법들이다.
아래의 예는 현재위치에 있는 public_html로 이동한다.
그리고 다음은 cd에 대한 다양한 예들이다.
함께 익혀두도록 하자.
[root@sulinux ~]# cd ./www |
위의 예는 현재디렉토리내에 있는 www라는 디렉토리로 이동하는 것이다.
.(점)이라는 상대경로를 이용한 예이다.
[root@sulinux ~]# cd ../www/data |
위의 예는 현재디렉토리보다 한단계 상위디렉토리에 있는 www디렉토리로 이동하고 다시 www디렉토리에 있는 data디렉토리로 이동하는 예이다.
이 역시 상대경로로 지정한 것이다.
[root@sulinux ~]# cd ../../conf |
위의 예는 현재디렉토리에서 두단계 상위디렉토리로 이동한 다음 그 디렉토리내에 있는 conf디렉토리로 이동하는 것으로 상대경로로 지정한 것이다.
이와같이 두단계 이상의 상대경로로 지정하는 것은 얼마든지 가능하다.
[root@sulinux ~]#cd ~ |
위의 예는 현재 작업위치가 어디든 상관없이 자기자신의 홈디렉토리로 이동하는 예이다.
~는 현재 사용자의 홈디렉토리를 의미한다.
[root@sulinux ~]#cd - /usr/sbin [root@sulinux sbin]# |
그리고 위의 예는 현재 위치의 이전위치로 이동하는 예이다.
즉, “-”는 이전 위치를 의미한다.
따라서 현재 위치의 디렉토리로 이동하기 바로 직전에 위치했던 디렉토리경로로 이동하는 방법이며, 잘 사용하지 않지만 필자는 매우 유용하게 사용하고 있다.
즉, 2곳의 위치를 한번씩 왔다갔다 번갈아 가면서 작업해야할 경우에 “cd -”는 매우 유용하다.
다음은 사용 예이다.
[root@RockyLinux01 ~]# pwd /root [root@RockyLinux01 ~]# [root@RockyLinux01 ~]# cd /usr/local [root@RockyLinux01 local]# [root@RockyLinux01 local]# cd ~ [root@RockyLinux01 ~]# [root@RockyLinux01 ~]# pwd /root [root@RockyLinux01 ~]# [root@RockyLinux01 ~]# cd - /usr/local [root@RockyLinux01 local]# [root@RockyLinux01 local]# pwd /usr/local [root@RockyLinux01 local]# [root@RockyLinux01 local]# cd - /root [root@RockyLinux01 ~]# pwd /root [root@RockyLinux01 ~]# |
관련자료
-
이전
-
다음