티스토리 뷰

linux 기초 mkdir,touch,rmdir명령어





기본 명령어


◎ mkdir → 디렉터리를 생성한다.


 - 디렉터리를 생성한다.

형식 - mkdir [ 옵션 ] 디렉터리명

옵션 → -p : 하위 디렉터리를 계층적으로 생성할 때 중간 단계의 디렉터리가 없으면 자동으로 중간 단계 

                   디렉터리를 생성하면서 전체 디렉터리를 생성한다.




mkdir [옵션] 디렉터리명 을 이용해서 디렉터리를 만들 수 있다.

mkdir /root/aaa  → /root 디렉터리 아래 aaa라는 디렉터리를 만들 수 있듯이

경로를 지정해서 디렉터리를 만들 수 있다.



경로를 지정 할 때는 상황에 따라 절대 경로와 상대경로를 이용 합니다.

./  >> 생략이 가능하므로 mkdir aaa 라 하면, 현재 위치에 aaa라는 디렉터리를 만들 수 있습니다.

(= mkdir ./aaa)



mkdir aaa1 bbb1 ccc1은 

aaa1을 만들고 bbb1을 만들고 ccc1를 만들겠다는 명령어 입니다. 

왼쪽부터 순서대로 명령어가 실행됩니다.




↑mkdir aaa/bbb/ccc는 만들 수 없습니다. 디렉터리를 생성 할 때 지정한 경로가 

만들어져 있지 않으면 생성할 수 없습니다.


※단, mkdir aaa aaa/bbb aaa/bbb/ccc 이런 식으로 중간 단계의 디렉터리를 생성해 줄 수 있습니다.





mkdir -p 명령어는 지정한 경로가 만들어져 있지 않으면 자동으로 중간 디렉터리를 생성 후

최종 디렉터리를 생성해 줍니다.



◎ touch → 빈 파일을 생성한다.


 - 파일을 생성한다.

형식 - touch 파일명


↑touch [파일명] 명령어는 빈 파일을 만들 수 있습니다. 

파일이름이 디렉터리 이름과 같으면  만들 수 없으니 유의 하시기 바랍니다.





↑파일을 생성할 경로를 지정해 그 위치에 직접 가지 않아도 파일을 생성할 수 있다.




↑현재위치가 아닌 다른 위치에 여러개의 파일을 만들때는 그 디렉터리로 이동해서 만들거나

touch aaa/file1 a b c d e f g  ->이와 같은 방법이 아닌 다른 방법을 사용해야한다.↓




↑이와 같은 방법을 사용하면 현재 위치에서 다른위치에 여러개의 파일을 만들 수 있다.

중괄호로 묵어주고, 콤마로 구분합니다.








◎ rmdir → 디렉터리를 삭제한다.


 - 디렉터리를 삭제한다.

형식 - rmdir [ 옵션 ] 디렉터리명

옵션 → -p : 지정한 디렉터리를 삭제한 뒤, 그 디렉터리의 부모 디렉터리가 빈 디렉터리일 경우 부모 디렉터리도 

                자동으로 삭제한다.



↑rmdir bbb 명령어를 이용해 bbb디렉터리를 삭제했습니다.

그런데 rmdir 명령으로 디렉터리를 삭제할 때 해당 디렉터리가 비어 있어야 합니다. 디렉터리에

파일이나 서브 디렉터리가 남아 있으면 rmdir로 디렉터리를 삭제할 수 없습니다.



↑rmdir aaa 명령은 aaa아래 bbb라는 디렉터리가 있어서 실행 될 수 없습니다.

※파일이 있어도 마찬가지 입니다.

삭제가 안될 때 는 그 디렉터리 아래에 무언가 있는 것 입니다!! (파일 혹은 디렉터리)




↑rmdir -p 명령어를 사용하면 모든 디렉터리가 타겟이 됩니다. 

aaa디렉터리안에 bbb라는 디렉터리가, bbb디렉터리 안에 ccc라는 디렉터리가 있어서

지울 수 없던 디렉터리 aaa를 rmdir -p를 이용하여

rmdir -p aaa/bbb/ccc  >> aaa디렉터리의 하위 디렉터리를 모두 지정하여 삭제 할 수 있습니다.




rmdir -p 명령어는 번거롭기도 하고, 더 나은 명령어가 있어서 사용하지 않습니다.↓(ex rm -rf)






◎ rm → 파일을 삭제하는 명령어(디렉터리도 삭제가능)


 - 파일을 삭제합니다.(CentOS는 rm명령어가 기본적으로 대화식 삭제 입니다.)

형식 - rm [ 옵션 ] 파일명/디렉터리명

옵션 →    -i : 지정한 파일을 삭제할 것인지, 대화식으로 확인한다.

-r : 지정한 디렉터리를 삭제합니다.

-f : 파일을 삭제할 것인지 묻지 않고 바로 삭제 합니다.

-rf : 파일 및 디렉터리를 삭제할 것인지 묻지 않고 바로 삭제 합니다. 



rm명령을 사용 할 때 삭제할 파일을 인자로 지정하면 해당 파일이 삭제 됩니다. 

이때 삭제할 것 인지 물어보지도 않고, 윈도우 처럼 파일이 휴지통에 담기는 것도 아닙니다. 

그냥 바로 삭제되어 복구할 수 없으므로 삭제할 때는 신중해야 합니다.





↑rm 명령어로 파일을 삭제 할 수 있습니다.

CentOS는 기본적으로 대화식 삭제 방식입니다.




rm -i 명령어를 사용하시면, 파일을 삭제할 때 정말 삭제 할지 물을 수 있는데,

이는 디렉터리 아래에 원하는 파일만 삭제할 때 유용합니다.





rm -ri 명령어를 사용하면 aaa디렉터리 아래 파일 중 지우고자 하는 파일만 지울 수 있습니다.


CentOS를 사용중 이시면, i를 붙이지 않고 rm -r(디렉터리삭제) 를 해도  

대화식 삭제를 할 수 있습니다.






rm -f 명령어를 사용하면 파일만 묻지 않고 바로 지울 수 있다.

※파일을 지울 때는 신중하게 하셔야 합니다.





rm -rf 명령어를 이용해 디렉터리 aaa를 묻지 않고 바로 삭제 할 수 있습니다.




rm -rf는 디렉터리 뿐만 아니라 파일도 묻지 않고 삭제 할 수 있습니다.

이러한 점을 이용해 편하게 삭제하는 방법이 있습니다.↓




rm -rf 명령어를 이용할때 " * " 를 이용하면 편리하게 삭제 할 수 있습니다.



a* → a 로 시작하는 모든 파일 파일 및 디렉터리

*a → a 로 끝나는 모든 파일 및 디렉터리



rm -rf  * 명령어를 이용해 현재위치의 모든 파일 및 디렉터리 (모둔 문자가 매칭됩니다.)를 삭제 할 수 있습니다.

이 방법을 통해 실습시 편리하게 삭제와 생성을 반복하 실 수 있습니다.














----------------------------------------

참고 -페도라 리눅스 -한빛 아카데미