윈도우와 달리 리눅스에서는 터미널(명령프롬프트) 를 이용한 작업을 많이 합니다.


이번에는 터미널 명령중 가장 기본적인 디렉토리(폴더) 생성과 삭제에 대하여 배워보겠습니다.



mkdir : make directory 의 준말로 디렉토리를 생성하는 명령어입니다.


기본적인 명령방법은 아래와 같습니다.

mkdir ./디렉토리


예를들어 mkdir ./test 를 입력하면 현재디렉토리에 test라는 이름의 디렉토리를 생성합니다.


여기서 mkdir 은 디렉토리생성명령어 ,  ./ 은 현재디렉토리애 생성하라는 의미, test 는 생성할 디렉토리는 test다. 라고 지정해준다고 생각하시면 됩니다.


여기서 현재디렉토리의 경우 별도로 디렉토리를 지정해주지 않고 생략해도 됩니다.


현재 디렉토리를 생략하면 아래와 같이 명령어를 입력할 수 있습니다.

mkdir 디렉토리



mkdir 은 한번에 하나의 디렉토리만 만들수 있는 게 아니라 여러개의 디렉토리를 동시에 지정해 줄 수 있습니다. 여기서 디렉토리간의 구분은 스페이스(공백) 문자를 이용합니다.


그럼 아래와 같이 표현 할 수 있습니다.

mkdir 디렉토리1 디렉토리2

만약 위의 내용을 그대로 입력하면 

현재 디렉토리에 디렉토리1, 디렉토리2 라는 이름으로 2개의 디렉토리가 생성됩니다.


이것은 원래 아래의 내용에서 현재 디렉토리는 생략한 것이라고 볼 수 있습니다.

mkdir ./디렉토리1 ./디렉토리2


mkdir이 원래는 어느 디렉토리에 새 디렉토리를 생성할 지 명시한다는 말은 다르게 말해서 꼭 현재 디렉토리가 아니더라도 디렉토리를 지정함으써 아래처럼 다른 디렉토리에 새로운 디렉토리를 생성할 수 있다는 의미가 되기도 합니다.

mkdir /home/park/test

위 명령어는 절대경로

 /home/park/ 디렉토리에 'test'라는 이름의 디렉토리를 생성하라 라는 의미입니다.


마찬가지로 상대경로를 지정하여서 디렉토리를 생성 할 수도 있습니다.

mkdir ./test/hi

위 명령어는 현재경로에 있는 'test' 디렉토리에 있는 'hi' 디렉토리를 생성하라는  명령입니다.


위 내용을 충분히 숙지 하셨다면 아래내용이 이해가 되실겁니다.

mkdir test/jsp1 /home/park/jsp2




위 명령어는 다르게 표현하면 mkdir ./test/jsp1 /home/park/jsp2 입니다.

즉, test 앞에 ./ 이 생략되어 있는 것이고 이를 바탕으로 해석하면 현재디렉토리에 있는 'test'디렉토리에 'jsp1' 디렉토리를 생성하고 절대경로 /home/park/ 디렉토리에 'jsp2'디렉토리를 생성하라는 의미로 해석 할 수 있습니다.



rmdir : remove directory 의 준말로 디렉토리를 삭제하는 명령어 입니다.



기본적인 명령방법은 아래처럼 mkdir과 동일합니다.

rmdir ./디렉토리



마찬가지로 mkdir 과 같이 아래처럼 명령을 할 수도 있습니다.

rmdir 디렉토리1 디렉토리2

rmdir 디렉토리1 /home/park/디렉토리2

rmdir test1 test2  # 현재디렉토리에 있는 test1과 test2를 삭제

rmdir test3 /home/park/test4   

#현재디렉토리에 있는 test3 와 /home/park/ 에 있는 test4삭제


만약 삭제를 원하는 디렉토리 하부(안쪽)에 내용물( 예를들어 파일, 다른 디렉토리) 이 있을 경우 mkdir 로는 삭제가 불가능 합니다. 이유는 중요한 폴더가 있을 경우 실수로 삭제하는 것을 방지하기 위해서 입니다. 그래서 이것을 무시하고 디렉토리와 하부에 있는 내용물을 통째로 지울수 있는 명령어가 있습니다.


rm -r 디렉토리명 : 디렉토리와 하부내용물을 전부 삭제


기본적인 명령 방법은 아래와 같습니다.

rm -r 디렉토리


만약 디렉토리는 그대로 두고 하부에 있는 내용물만 지워주고 싶다면 아래와 같이 합니다.

rm -r 디렉토리/*


만약 디렉토리를 삭제할때 디렉토리가 삭제되지 않고 아래와 같이 삭제가 거부될 때는


rm: '디렉토리'를 지울 수 없음: 허가 거부

와 같은 결과가 나온다면 파일에 대한 접근권한이 없는 것입니다.


이럴때는 파일에 대한 권한을 가진 

1.소유자 계정으로 접속하거나 

2.혹은 root계정 

3.또는 sudo 권한을 가진 계정

으로 삭제를 해 주어야 합니다.


여기서는 sudo 권한을 가진 계정으로 삭제를 해 보도록 하겠습니다.


sudo 권한을 가진 계정이 어떤 계정인지 모르신다면 

차후에 변경이 가능하지만 지금은 

Ubuntu를 설치할때 생성한 계정이라고 생각하셔도 무방합니다.


sudo 권한을 가진 계정으로 로그인 한 상태에서 아래와 같이 명령합니다.

sudo rm -r 디렉토리

위 명령은 디렉토리와 하부내용물까지 전부 지우는 내용입니다. 


sudo 명령어또한 위 명령어에 모두 적용 할 수 있습니다.


마찬가지로 아래명령어도 적용을 해 보시면 모두 똑같이 적용이 가능함을 알 수 있습니다.

sudo rm -r /*



블로그 이미지

개밥그릇,

영상,AI기반 사물인터넷 프로그래밍에 관한 기초부터 차근차근 포스팅을 할 예정입니다.

,