LINUX/LINUX-COMMAND LINE

cd - 현재 작업 디렉토리 변경

전테리 2022. 5. 6. 23:59
728x90
SMALL

cd라는 명령어로 현재 작업중인 디렉토리(트리 구조의 미로에서 우리가 현재 있는 위치)를 변경할 수 있다.

cd 다음에 변경하고자 하는 디렉토리 경로명을 입력해보라 . 경로명이란 우리가 원하는 디렉토리 까지 파일 시스템 트리상의 이동 경로를 나타낸 것이다. 경로명을 표시하는 방법은 두 가지가 있는데, 절대 경오명과 상대 경로명이다. 

먼저 절대 경로명을 보자

 

<< 절대 경로명 >>

절대 경로명은 루트 디렉토리에서 원하는 디렉토리 또는 파일까지의 경로에 대하여 각 디렉토리 위치들 하나하나를 명시해준 것이다. 예를 들어, 사용자의 시스템 프로그램들이 대부분 설치되어 있는 디렉토리가 있다. 이 디렉토리의 절대 경로명은 /usr/bin이다. 즉 루트 디렉토리(경로명의 맨 처음을 슬래시(/)로 입력하여 루트 디렉토리를 표시한다)

다음에 usr이란 디렉토리가 있고 usr 디렉토리안에는 bin 디렉토리가 있다는 것이다.

 

이제 우리는 현재 작업 디렉토리가 파일들오 가득 찬  /usr/bin 디렉토리로 변경된 것을 볼 수 있다. 

쉘 프롬프트가 어떻게 바뀌었는지 보이는가?([~] -> [/usr/bin]) . 편리하게도 작업 디렉토리가 자동적으로 항상 프롬프트에 표시되도록 설정되어 있다.

 

<< 상대 경로명 >>

절대 경로명은 루트 디렉토리로 시작해서 목적지까지 모두 표시하지만 상대 경로명은 현재 작업 디렉토리가 시작점이 된다. 상대 경로명을 표시하려면 파일 시스템 트리상의 상대적인 위치를 대신 표현해주는 특수 기호를 사용해야 하는데 

바로 .(점) 과 ..(점점) 이다.

 

. 기호는 현재 작업 디렉토리를 나타내고 ..기호는 작업 디렉토리의 상위 디렉토리를 의미한다. 어떤 원리로 동작하는지 알아보자

 

절대 경로명 사용
상대 경로명 사용

이 두 방법은 동일한 결과를 보여준다. 그럼 어떤 방법을 사용하는게 좋을까? 당연히 더 적게 입력할 수 있는 방법을 택하면 된다.

 

동일하게 /usr에서 /usr/bin 디렉토리로 이돌할 때도 절대 경로명과 상대 경로명 둘 다 사용할 수 있다.

절대 경로명을 사용
상대 경로명을 사용

여기서 짚고 넘어가야 할 중요한 것이 있는데, 거의 모든 경우에 ./ 기호를 생략할 수 있다. 

./bin 대신 bin 으로 입력하면 된다.

결과적으로 동일한 경로명이다. 일반적으로 이동하려고 하는 경로명을 구체적으로 입력하지 않으면 현재 작업 디렉토리가 시작 기준이 된다.

 

<< 유용한 단축 표현들 >>

단축 표현 설명
cd 작업 디렉토리를 홈 디렉토리로 변견
cd -  작업 디렉토리를 이전 작업 디렉토리로 변경
cd ~username username의 홈 디렉토리로 작업 디렉토리를 변경. 예) cd ~bob을 입력하면 사용 bob의 홈 디렉토리가 작업 디렉토리로 변경된다.

 

 

<<<< 파일명에 관한 중요한 몇 가지 사실 >>>>

 

* .(마침표)로  시작하는 파일명을 가진 파일들은 보이지 않는다. 단순히 ls 명령어만으로는 숨겨진 파일을 볼 수 없고 오직 -a옵션을 포함한 ls -a를 사용해야 비로소 확인이 가능하다. 사용자 계정이 생성되면, 해당 계정에 대한 환경설정을 위해 다수의 숨겨진 파일들을이 홈 디렉토리에 생성된다. 심지어 일부 응용 프로그램들도 설정 파일들은 홈 디렉토리에 숨김 파일로 저장해두기도 한다. 사용자 환경설정을 변경하는 방법에 대해서는 추후에 더 자세히 포스팅 하겠다.

 

* 유닉스처럼 리눅스에서도 파일명과 명령어는 대소문자를 구별한다.  즉, File1 과 file1은 각각 다른 파일이다.

 

* 다른 운영체제들과는 달리 리눅스에는 "파일 확장자" 개념이 없기 때문에 원하는 대로 파일명을 만들 수 있고, 이 파일의 내용(또는) 파일 종류는 다른 방법을 결정된다. 이처럼 유닉스형 시스템에서는 파일 확장자로 파일 내용과 종류를 구분하지 않지만 일부 응용 프로그램들은 파일 확장자를 이에 사용하기도 한다.

 

* 리눅스에서는 띄어쓰기와 구두점 기호가 포함된 긴 파일명이 허용된다. 하지만 파일명에 구두점 기호를 사용할 때, 마침표, 대시(하이폰) 및 밑줄 표시(언더라인)만이 사용 가능하다. 하지만 무엇보다 가장 중요한 것은 파일명에 공백(스페이스)을 포함하지 말라는 것이다. 파일명에 공백이 있으면 커맨드라인에서 파일명을 입력할 때 상당히 번거롭기 때문이다. 파일명에 띄어쓰기를 꼭 포함해야 한다면 밑줄표시( _ ) 를 대신 사용하자

 

728x90
LIST