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

파일과 디렉토리 삭제하기(rm)

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

파일과 디렉토리 삭제하기(rm)

 

 

 

 

 

불필요한 파일을 삭제하는 리눅스명령어는 rm이다.

 

 

 

 그리고 rm명령어는 remove의 약어로서 파일이나 디렉토리를 삭제하는 명령어이다.

 

 

 

 흔히 하나 이상의 파일을 삭제할 때 사용하지만 특정 옵션을 사용하면 디렉토리도 삭제할 수 있다.

 

 

 

 한가지 알아두어야 할 것은 rm명령어는 “rm -i”로 앨리아스(alias)되어 있다.

 

 

 

 따라서 그냥 rm만 실행하여도 “rm -i”와 같이 사용된다.

 

 

 

 모든 사용자의 홈디렉토리에 있는 .bashrc파일에 앨리아스 설정이 되어 있으므로 이 파일을 확인하고 수정하여 앨리아스를 제거하거나 변경할 수 있다.

 

 

 

 

 

간단한 예부터 보도록 하자.  

 

 

[sspark@sulinux queen]$ls -l

합계 1204

-rwxr-xr-x 1 sspark sspark 1224356  3 19 05:02 cryptsetup

drwxr-xr-x 2 sspark sspark    4096  3 19 04:47 sulinux

[sspark@sulinux queen]$

[sspark@sulinux queen]$rm cryptsetup

rm: remove 일반 파일 `cryptsetup'? y

[sspark@sulinux queen]$

[sspark@sulinux queen]$ls -l

합계 4

drwxr-xr-x 2 sspark sspark 4096  3 19 04:47 sulinux

[sspark@sulinux queen]$

 

 

 

 

위의 예는 cryptsetup이라는 파일을 삭제하는 예로서 아무런 옵션없이 rm을 사용하면 -i옵션이 적용되어 삭제확인을 한다.

 

 

 

 따라서 y라고 입력을 하면 cryptsetup파일이 삭제된다.

 

 

 

 당연한 얘기겠지만 y대신 n을 입력하면 삭제되지 않는다.

 

 

 

 

 

그리고 다음은 rm으로 파일을 삭제할 때에 -f옵션을 사용한 예로서 -f옵션을 확인과정 없이 즉시 파일을 삭제할 때 사용하는 옵션이다.

 

 

 

 다음 예를 보자.

 

[sspark@sulinux queen]$ls -l

합계 224

drwxr-xr-x 2 sspark sspark   4096  3 19 04:47 sulinux

-rwxr-xr-x 1 sspark sspark 219692  3 19 05:04 tc

[sspark@sulinux queen]$

[sspark@sulinux queen]$rm -f tc

[sspark@sulinux queen]$

[sspark@sulinux queen]$ls -l

합계 4

drwxr-xr-x 2 sspark sspark 4096  3 19 04:47 sulinux

[sspark@sulinux queen]$

 

 

 

위의 예에서 보듯이 -f옵션을 사용하면 삭제확인과정없이 바로 삭제가 된다는 것을 알 수 있다.

 

 

 

 

 

이번에는 rm을 이용하여 두개이상의 파일을 삭제하는 방법을 보도록 하자. , rm을 이용하면 여러 개의 파일을 한꺼번에 삭제할 수 있다.

 

 

 

 , 파일을 삭제할 수 있는 rm명령어에서 삭제대상파일을 지정할 때에 대상파일의 패턴을 지정할 수 있다.

 

 

 

 다음 예를 보자.

 

[sspark@sulinux ~]$rm -f user*

 

 

 

위의 예는 현재디렉토리에 존재하는 user로 시작하는 모든 파일을 삭제하는 것이다.

 

 

 

 

 

[sspark@sulinux ~]$rm -f /home/sspark/*.htm

 

 

 

위의 예는 /home/sspark/디렉토리에 존재하는 *.htm인 모든 파일을 삭제한다.

 

 

 

 

 

지금까지의 rm에 대한 예는 파일을 대상으로 삭제하는 것이었다.

 

 

 

 하지만 rm을 이용하면 파일을 삭제할 수도 있지만 디렉토리까지도 한꺼번에 삭제할 수 있다.

 

 

 

 물론 디렉토리를 삭제하는 명령어는 rmdir이라고 알려져 있다.

 

 

 

 하지만 대부분의 시스템관리자들이 디렉토리를 삭제할 때에 rmdir보다는 rm명령어를 주로 사용한다.

 

 

 

 

 

, rm사용시에 -r -f옵션을 함께 사용함으로써 비어있든 비어있지 않든 상관없이 디렉토리를 삭제할 수 있다.

 

 

 

 다음 예를 보자.

 

[sspark@sulinux queen]$ls -l

합계 4

drwxr-xr-x 2 sspark sspark 4096  3 19 04:47 sulinux

[sspark@sulinux queen]$

[sspark@sulinux queen]$

[sspark@sulinux queen]$rm -f sulinux/

rm: cannot remove `sulinux/': 디렉토리입니다

[sspark@sulinux queen]$

[sspark@sulinux queen]$

[sspark@sulinux queen]$rm -rf sulinux/

[sspark@sulinux queen]$

[sspark@sulinux queen]$ls -l

합계 0

[sspark@sulinux queen]$

 

 

 

 

위의 예는 sulinux라는 디렉토리를 삭제하는 예로서 먼저 -f옵션만을 사용한 첫번째 예에서는 sulinux디렉토리가 삭제되지 않았다.

 

 

 

 , 디렉토리를 삭제하기 위해서 -r옵션을 사용해야 하기 때문이다.

 

 

 

 따라서 두번째 예에서는 -rf옵션을 사용하였다.

 

 

 

 따라서 sulinux디렉토리가 삭제되었다.

 

 

 

 당연한 얘기지만 위의 예와 같이 sulinux라는 디렉토리가 삭제되면 그 안에 있던 모든 파일들은 당연히 삭제된다.

 

 

 

 

 

정리해 보자. rm에서 -r옵션은 디렉토리를 삭제하고자 할 때 사용해야하는 옵션이다.

 

 

 

 그리고 -f옵션은 파일이나 디렉토리에 대한 삭제확인 과정을 생략하도록 하는 옵션이다.

 

 

 

 물론 특정 디렉토리를 삭제할 때에 -r옵션과 함께 -f옵션을 사용하면 파일과 디렉토리 삭제에 대한 확인과정을 생략하고 바로 삭제한다.

 

관련자료

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

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  79 명