[linux] 리눅스 cd 명령어 실습 (절대경로, 상대경로)
- 3 mins리눅스 cd (change directory) 명령어 기초
cd
명령어를 통해 경로를 이동할 때, 두 가지 방법을 사용할 수 있다.
바로 절대경로와 상대경로인데, 각각의 차이점을 알아보자.
현재 디렉토리가 /a/b/c/d
로 되어있다고 가정하자
우선 경로를 a
의 하위 디렉토리인 b
로 이동해보자.
이동 후에는 pwd로 현재 위치를 확인하는 습관을 들이는 것이 좋다.
cd /a/b/
pwd
이제, 현재 위치 (/a/b/
)를 기준으로 여러가지 방법으로 경로를 이동하며
절대경로와 상대경로에 대한 감을 잡을 것이다.
절대경로
절대경로란 최상위 디렉토리 (/)부터 시작해서 목표 디렉토리까지 가는 경로를 전부 기술하는 방식이다.
절대경로로 경로를 기술할 때에는 항상 맨 앞에 최상위 디렉토리 (/)가 붙는다는 것을 명심하자.
절대경로를 이용하여 b
디렉토리에서 d
디렉토리로 이동해보자.
cd /a/b/c/d/
pwd
그리고 다시 b
경로로 이동해보자.
cd /a/b/
pwd
이처럼 절대경로를 통해 경로 이동을 할 때에는 현재 위치에 상관 없이 똑같은 명령어를 입력하여 이동하게 된다.
절대 경로는 어렵지 않다. 그냥 최상위부터 해당 디렉토리가 위치하는 곳 까지의 경로를 차례대로 적어주면 되기 때문이다.
상대경로
상대경로는 ‘현재 자신이 있는 위치를 기준으로’ 이동을 하는 것이다.
그리고 현재 자신이 있는 위치는 .(마침표) 로 표기한다.
그럼 이번에는 상대경로를 활용하여 b
에서 d
로 이동해보자.
설명이 와닿지 않는다면 아래의 예제로 확인하자.
cd ./c/d/
pwd
/a/b/c/d/
중에 /a/b/
까지의 경로는 현재 자신의 위치이므로 . 으로 표기했다.
그리고 나머지 경로 /c/d/
를 입력하여 경로 이동을 한 것을 볼 수 있다.
이번엔 상대경로를 활용하여 다시 b
경로로 이동해보자.
이전(상위) 디렉토리는 .. 으로 표기한다.
b
디렉토리로 이동을 위해서는 상위 디렉토리로 ‘2회’ 이동이 필요하다.
예제로 확인하자.
cd ../../
pwd
상대경로에 대한 감이 좀 잡힐지 모르겠다.
그럼 이번에는 절대경로와 상대경로를 각각 활용하여 r
경로로 이동해보자
r
경로는 /q/w/e/r/
에 위치해있다.
(저번 포스팅 마지막 부분의 실습 디렉토리 생성 참조)
절대경로는 무조건 최상위부터 시작하는 경로이므로 현재 위치를 고려할 필요가 없다.
다음과 같이 입력하면 r
경로로 이동된다.
(절대 경로는 일단 눈으로만 확인하고 상대경로로 실습해보자. )
cd /q/w/e/r/
상대경로로 이동할 때에는 현재 경로인 b 부터 이동하는 모든 과정을 고려해야한다.
다음과 같은 순서로 이동이 필요하다.
-
a 로 이동 → ..
-
/ (최상위 디렉토리)로 이동 → ..
-
q로 이동 → /q
-
w로 이동 → /w
-
e로 이동 → /e
-
r로 이동 → /r
이를 한 줄의 명령어로 입력하면 다음과 같다.
(맨 마지막의 슬래쉬 (/)는 입력해도 되고 안해도 되지만 ‘디렉토리’라는 것을 확실히 나타내기 위해 편의상 입력한다)
cd ../../q/w/e/r/
pwd
실습을 하며 느꼈겠지만, 절대경로와 상대경로는 어떤 방법이 무조건 더 좋다고 할 수 없다.
그 때 그 때 상황에 따라 절대경로가 편할 때도 있고, 상대경로가 편할 때도 있는 것이다.
예를 들어,
/a/b/
에서 d
로 이동 할 때에는 절대경로인 /a/b/c/d/
보다는 상대경로인 ./c/d/
로 이동하는 것이 편하고.
/a/b/
에서 r
로 이동 할 때에는 절대경로인 /q/w/e/r/
이 상대경로인 ../../q/w/e/r/
보다 편한 것 처럼 말이다.
절대경로와 상대경로를 활용하여 이곳 저곳으로 이동하는 연습을 몇 번만 해보면 금방 손에 익숙해질것이다.
*주의사항*
만약 현재 위치가 b라고 가정할 때, ./
은 /a/b/
를 의미하지만, 점(.) 하나를 빼 먹으면 최상위 디렉토리 (/)를 의미하게 된다.
디렉토리 이동 시에는 큰 상관이 없지만,
나중에 삭제나 이동 명령어를 사용 할 때에는 작은 실수가 돌이킬 수 없는 치명적인 결과를 낳을 수도 있기 때문에 유의해야한다.
현재 경로의 파일을 삭제하려다가 최상위 경로의 파일이 모두 날아갈 수 있기 때문이다.
기존 블로그 원문을 옮김