mkdir (make directory)

mkdir이라는 커맨드를 사용해서 아규먼트로 새로 만들 디렉토리 경로를 주면 디렉토리를 생성할 수 있다. 절대경로와 상대경로 모두 사용 가능하다.

$ mkdir ~/unix_practice
$ mkdir unix_practice

홈 디렉토리 안에 unix_practice라는 디렉토리를 만들라는 커맨드이다.

$ mkdir Jul Aug Sep

이어 붙여 작성해서 여러 파일을 만들 수도 있다.

touch (touch file)

파일에 손을 대서 파일의 마지막 접근 시간이나 수정 시간을 업데이트 하는 커맨드이지만 파일이 없으면 파일을 생성하기 때문에 파일을 생성할 때도 쓰이는 커맨드이다.

sep $ touch finances.txt performance.txt

spe 파일 안에 finances와 performance 텍스트 파일을 총 2개 생성했다는 의미이다. 만약 여기서 Jul이라는 파일로 이동해서 추가로 파일을 만들어준다고 하면

sep $ touch Jul/finances.txt Jul/performance.txt

..으로 부모디렉토리에 올라가서 Jul 디렉토리로 이동할수도 있지만 이렇게 작성하면 Jul 디렉토리에 바로 파일을 만들어 줄 수있다.

'코린이 개념잡기 > 유닉스 커맨드' 카테고리의 다른 글

파일 내용 살펴보기  (0) 2024.12.07
CLI 텍스트 에디터 : Vim  (1) 2024.12.07
필수 디렉토리  (1) 2024.12.07
디렉토리 구조와 파일 경로  (1) 2024.12.07
🔊명령어  (0) 2024.12.07

/bin

bin은 binary(바이너리)의 약자로, 컴퓨터가 실행할 수 있는 프로그램을 말한다. 커맨드를 입력하면 어떤 동작이 일어나는데 커맨드도 결국 어떤 프로그램입니다. 커맨드를 입력하면 커맨드에 해당하는 프로그램이 실행되는 것. 그리고 그 프로그램들의 일부는 바로 이 /bin 디렉토리 안에 있다.

$ ls -l /bin

/bin 디렉토리의 내용을 살펴보면, ls 같은 파일들이 보이는데, ls 커맨드를 입력하면 /bin 안에 있는 ls 프로그램이 실행되는 것이다.

/sbin

sbin은 bin과 비슷한데, 관리자 전용 프로그램들이 있다.

/etc

etc에는 컴퓨터 설정 파일들이 있는데, 각종 프로그램의 설정 파일, 관리자 권한 설정 파일 같은 것들이 있다.

/home 또는 /Users

/home(리눅스) 또는 /Users(맥 OS) 디렉토리에는 사용자들의 홈 디렉토리가 있다. 사용자의 홈 디렉토리는 사용자의 모든 파일을 저장해 놓는 곳이다.

/usr

usr은 사용자(user)에게 필요한 파일들을 저장하고 있다. /usr 안에도 각종 binary(프로그램 파일)를 저장하고 있는 bin 디렉토리가 있는데, /bin에는 컴퓨터가 시작하거나 자신을 수리하기 위해서 꼭 필요한 커맨드들이 있고, /usr/bin에는 컴퓨터가 필요하기보다는 사용자가 필요한 커맨드들이 있다. 그리고 /usr 안에는 local이라는 디렉토리가 있는데, 여기에는 사용자가 직접 설치한 프로그램과 관련된 파일들이 있다.

디렉토리 : 유닉스 운영체제에서는 폴더디렉토리라고 부른다. 디렉토리라는 용어에 익숙해지도록 하자.

유닉스 디렉토리 구조

  • 최상위 파일 안에는 여러 디렉토리와 파일이 존재한다.
  • 디렉토리 안에 디렉토리가 있을 때 안에있는 디렉토리를 하위 또는 자식 디렉토리라고 한다.
  • 바깥에 있는 디렉토리를 상위 또는 부모 디렉토리라고 한다.

root 최상위 디렉토리

루트 디렉토리는 유닉스 파일 시스템의 최상위 디렉토리로, 모든 파일과 디렉토리의 시작점이다. /로 표시되며, 시스템의 모든 파일과 디렉토리가 이 안에 위치한다

HOME 디렉토리

홈 디렉토리는 각 사용자의 개인 파일과 설정을 저장하는 디렉토리이다. /home 아래에 각 사용자의 이름으로 된 디렉토리가 생성되며, 사용자의 개인 파일이 여기에 저장된다. 사용자의 개인 파일들은 사용자 홈 디렉토리 안에 있고 컴퓨터에 설치된 프로그램이나 컴퓨터에 일반적으로 필요한 파일들은 홈 디렉토리 바깥에 존재한다.

사용자의 홈 디렉토리

개인컴퓨터엔 사용자가 하나일 테니지만 공유 컴퓨터엔 사용자 계정이 여러개 있을 수도 있다. 사용자마다 홈 디렉토리가 주어진다. 홈 디렉토리에는 각종문서나 바탕화면 파일, 다운로드 파일 등이 있다. ~로 표시한다. 특정 사용자의 home 디렉토리 까지의 경로를 줄여서 쓴 것이다.

파일 경로

/usr/bin 를 하나씩 풀어서 해석해보자면 / =root(최상위 폴더)의, usr/ = use폴더의, bin/ = bin폴더 라는 뜻이다.

taeho라는 사용자로 로그인 되어 있다면 home 디렉토리는 /home/taeho 라고 쓸 수 있고, 줄여서 ~로 표기할 수 있다. 만약 태호가 아닌 다른 사용자의 홈 디렉토리라도 ~로 표기되지만 문자열로 표기한다면 /home/codeit 이라고 할 수 있다. 그리고 줄여서 쓴 디렉토리 뒤에도 붙여서 사용할 수 있다. 

/home/taeho = ~
~/Documents = /home/taeho/Documents
~/Document/Projects = /home/taeho/Documents/Projects

절대경로

  • 디렉토리가 위치한 곳을 나타내는 가장 디테일하고 정확한 주소
  • 현재 위치해 있는 곳과 상관없이 늘 같은 의미 가짐

상대경로

  • 디렉토리가 위치한 곳을 현재 위치(워킹 디렉토리)를 기준으로 설명하는 것
  • 현재 위치에 따라 동일한 표현도 다른 의미로 사용 가능
  • 본인의 위치 : 
  • 부모의 위치(한 단계 위) : ..
  • 홈 : ~
$ cd ./Documents/Projects/Javascript

사실 상대경로를 사용할 때 앞에 ./는 안써줘도 된다.
경로가 /(루트)로 시작하지 않으면 자동으로 상대 경로로 인식하기 때문이다.

$ cd Documents/Projects/Javascript
$ cd Documents/Projects/Javascript 
에 위치해 있는데 Projects 안에 HTML 디렉토리로 이동하고 싶다면

$ cd ../HTML
혹은
$ cd ..
$ cd HTML

이렇게 이동할 수 있다.
$ cd Documents/Projects/Javascript
에서 Document의 형제 디렉토리인 Pictures 디렉토리로 이동하고 싶다면

$ cd ../../../Pictures
이렇게 이동해도 되지만 이럴땐 절대경로를 적는게 좀 더 쉽고 직관적이다.
$ cd ~/Pictures
홈에서 Pictures로 이동한다는 뜻이다.

 

+여담

만약 파일 / 디렉토리 이름에 공백이 있으면 어떻게 해야할까?

$ cd hello world
$ ls hello world

hello world가 두개의 아규먼트로 인식되기 때문에 실행했을때 오류가 난다. 이럴 때 해결방법은

1. '작은 따옴표' 사용

2. "큰 따옴표" 사용

3. \ 역슬래시 사용

$ cd 'hello world'
$ cd "hello world"
$ cd hello\ world

***파일이나 디렉토리 이름에는 애초에 공백을 사용하지 않는게 바람직하다.

이유? 공백이 들어가게 되면 커맨드를 입력할 때 쉽게 실수할 수 있고, 커맨드가 제대로 작동하도록 따로 신경을 써줘야 하기 때문이다. 공백 대신 _ 같은 기호를 사용하자.

'코린이 개념잡기 > 유닉스 커맨드' 카테고리의 다른 글

디렉토리와 파일 생성하기  (0) 2024.12.07
필수 디렉토리  (1) 2024.12.07
🔊명령어  (0) 2024.12.07
아규먼트(argument) 와 옵션(option)  (0) 2024.12.04
터미널과 shell  (1) 2024.12.04

+ Recent posts