강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

rm (파일이나 디렉토리를 삭제한다.)

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

rm

remove의 약어로서 파일이나 디렉토리를 삭제하는 명령어이다.
흔히 하나이상의 파일을 삭제할때 사용하지만 특정 옵션을 사용하면 디렉토리도 삭제할 수 있다.
이 명령어는 rmdir명령어와 함께 알아두기 바란다.
참고로 DOS명령어의 del이라는 명령어와 같은 명령어라고 할 수 있다.

사용형식

       rm  [-dfirvR]  [--directory]  [--force]  [--interactive]  [--recursive]  [--help] [--version]
       [--verbose] name...


사용예 #1

특정 파일하나를 삭제한다.

[root@host1 commmand]# ls -l
합계 20
-rw-r--r--    1 root     root          132  9월 10 16:03 bible.txt
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir1
drwxr-xr-x    3 root     root         4096  9월 14 22:08 dir2
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir3
-rw-r--r--    1 root     root          132  9월 14 21:47 imsi.txt
[root@host1 commmand]#
[root@host1 commmand]# rm imsi.txt
rm: remove 일반 파일 `imsi.txt'? y
[root@host1 commmand]#
[root@host1 commmand]# ls -l
합계 16
-rw-r--r--    1 root     root          132  9월 10 16:03 bible.txt
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir1
drwxr-xr-x    3 root     root         4096  9월 14 22:08 dir2
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir3
[root@host1 commmand]#

위와 같이 imsi.txt라는 파일을 아무런 옵션없이 그냥 "rm imsi.txt'라고 삭제하면 삭제확인을 하게 된다.
이때 그냥 "y"를 입력하면 삭제가 되고 "n"를 입력하면 명령어가 취소되면서 imsi.txt파일은 삭제되지 않는다.

사용예 #2

이번에는 삭제확인을 하지 않고 바로 삭제하는 예를 보인 것이다.

[root@host1 commmand]# ls -l
합계 16
-rw-r--r--    1 root     root          132  9월 10 16:03 bible.txt
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir1
drwxr-xr-x    3 root     root         4096  9월 14 22:08 dir2
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir3
[root@host1 commmand]#
[root@host1 commmand]#
[root@host1 commmand]# rm -f bible.txt
[root@host1 commmand]#
[root@host1 commmand]# ls -l
합계 12
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir1
drwxr-xr-x    3 root     root         4096  9월 14 22:08 dir2
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir3
[root@host1 commmand]#

위의 예와 같이 rm명령어에 -f 옵션을 함께 사용하면 삭제확인하는 단계없이 지정된 파일(bible.txt)를 바로 삭제한다.


사용예 #3

이번에는 특정 디렉토리를 삭제해 보겠다.

[root@host1 commmand]# ls -l
합계 12
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir1
drwxr-xr-x    3 root     root         4096  9월 14 22:08 dir2
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir3
[root@host1 commmand]#
[root@host1 commmand]# rm -f dir3
rm: cannot remove `dir3': 디렉토리입니다
[root@host1 commmand]#

위와 같이 디렉토리를 삭제할 때에는 -r옵션을 사용해야한다.
-r옵션은 디렉토리를 삭제하고자 할 경우에 사용하는 옵션이다.
-r옵션을 사용하면 비어있는 디렉토리를 삭제할 수 있다.
하지만 위의 경우에는 지우고자하는 dir3라는 디렉토리에 파일이나 서브디렉토리가 존재하고 있으므로 삭제되지 않았다.

그렇다면 파일이나 서브디렉토리가 존재하는 특정 디렉토리를 바로 삭제하고자 한다면 어떻게 하면 될까?
다음의 예를 보자.

사용예 #4

[root@host1 commmand]# rm -rf dir3
[root@host1 commmand]#
[root@host1 commmand]# ls -l
합계 8
drwxr-xr-x    2 root     root         4096  9월 14 21:53 dir1
drwxr-xr-x    3 root     root         4096  9월 14 22:08 dir2
[root@host1 commmand]#

이번에는 -rf옵션을 함께 사용하였다.
-f옵션은 위의 예에서도 보았듯이 삭제확인을 하지 않기도 하지만 디렉토리를 삭제할 경우에 삭제하고자하는 디렉토리에 파일이나 서브디렉토리가 존재하여도 삭제확인 단계없이 바로 삭제하도록 한다.


사용예 #5


참고로  둘이상의 파일을 삭제코자한다면 다음과 같이 하면 된다.

[root@host1 commmand]# rm bible*
[root@host1 commmand]# rm -f imsi*

위의 첫번째 bible*는 bible로 시작하는 모든 파일을 삭제한다. 하지만 모든 파일의 삭제여부를 확인하게 된다.
두번째는 -f옵션을 사용하였으므로 삭제확인하는 단계없이 바로 imsi로 시작하는 모든 파일을 삭제한다.


저작권 :  수퍼유저코리아 (www.superuser.co.kr),   무단 재배포및 복사를 금합니다.

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,040 명
  • 현재 강좌수 :  35,850 개
  • 현재 접속자 :  168 명