October 16, 2019

이 글은 윌리엄 E. 샤츠 주니어의 리눅스 커맨드라인 완벽 입문서 책을 정리한 글입니다.

파일시스템 트리 구조의 이해

계층적인 디렉토리구조 즉 트리 형식으로 디렉토리를 구성한다. 루트(root)디렉토리 : 파일시스템의 최상위 디렉토리

  • 윈도우즈 : 저장장치마다 개별파일시스템으로관리
  • 유닉스형 시스템 : 단일 파일시스템으로 관리하며, 시스템 관리자의 재량에 따라 다양한 위치에 마운트 된다.

현재 작업 디렉토리

현재 작업디렉토리 표시하는 명령어

$ pwd
  • 터미널 세션을 시작하면 홈디렉토리가 현재 작업 디렉토리가 된다.
  • 사용자 계정마다 고유의 홈 디렉토리를 갖게된다.
  • 일반 사용자로 시스템을 사용할 때 파일 쓰기 권한이 부여된 유일한 공간이다.

디렉토리 표시

현재 작업 디렉토리에 있는 파일과 하위 디렉토리를 표시하는 명령어

$ ls

현재 작업 디렉토리 변경

$ cd 변경하고자 하는 디렉토리 경로명

경로명: 원하는 디렉토리까지 파일시스템 트리상의 이동경로

절대 경로명

루트 디렉토리에서 원하는 디렉토리 또는 파일까지의 경로에 대하여 각 디렉토리 위치들 하나하나 명시해준 것이다.

# /usr에서 /usr/bin 디렉토리로 이동
$ cd /usr/bin
$ pwd

상대 경로명

현재 작업 디렉토리가 시적점으로 . 과 .. 을 사용해 명시한다.

  • .: 현재 작업 디렉토리(./ 생략 가능하다.)
  • ..: 현재 작업 디렉토리의 상위 디렉토리
# /usr에서 /usr/bin 디렉토리로 이동
$ cd ./bin # 또는 cd bin
$ pwd

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

유용한 단축 표현들

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

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

  • .로 시작하는 파일명을 가진 파일들은 보이지 않는다. 확인하려면 -a 옵션을 포함한 ls -a 를 사용해야 확인 가능하다.
  • 파일명과 명령어는 대소문자구별한다.
  • 파일 확장자 개념이 없어 원하는 대로 파일명을 만들 수 있고, 파일의 내용과 파일 종류는 다른 방법으로 결정된다.
  • 띄어쓰기와 구두점 기호가 포함된 긴 파일명허용된다. (구두점 기호를 사용할 때, . , - 및 _ 만 사용 가능하다.)
  • 파일명에 공백을 포함하지 말자.(커맨드 라인에서 파일명을 입력할 때 번거롭기 때문이다.)