인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

H K님의 프로필 이미지

작성한 질문수

리눅스 입문 - 개념으로 탄탄히!!

[실습] 디렉터리 다루기

rm 명령어질문

작성

·

565

1

안녕하세요

rm -rf , rm -r 이 차이점이 궁금합니다

rm -rf를 하던 rm -r 을 하던 둘다 경고없이 그냥 디렉터리를 지우는데 무슨 차이인가요 ? 육안으로 확인하기가 어려워서 질문드립니다.

직접 해보았는데 두 명령어 다 디렉터리 안에 파일이 있던 없던 똑같이 삭제가 됩니다. ( 경고없이 )

답변 1

3

런잇(ProgCoach4U)님의 프로필 이미지
런잇(ProgCoach4U)
지식공유자

안녕하세요. H K님

아시겠지만, rm 명령은 파일을 삭제하기 때문에 함부로 사용하면 큰일나죠. rm 명령어 내에 -i 옵션이 있습니다. 파일을 삭제할 때 사용자에게 진짜로 삭제할 것인지 물어보고 y로 대답하면 삭제하게 됩니다.

그래서 많은 사람들이 rm 명령어에 "rm -i"로 alias를 걸어둡니다. alias를 거는 방법은 다음과 같습니다.

alias rm="rm -i"

쉘에서 실행하셔도 되고, ~/.bashrc 파일에 넣어두시면 bash가 열릴 때마다 설정됩니다.

이렇게 하면 사용자가 입력한 rm 명령이 내부적으로 rm -i로 실행됩니다. 파일을 삭제할 때 진짜로 지울 것인지 물어보게 됩니다.

이렇게 -i 옵션을 넣어 디렉터리 rm -r 명령을 실행하는 경우 디렉터리를 지울지 물어봅니다. 그런데 rm -rf 명령을 내리면 물어보지 않고 그대로 삭제합니다. 즉, -i 옵션이 있어도 물어보지 않고 강제로 삭제하게 되는 것이죠. 이해 되시죠? :)

답변이 늦어져 죄송합니다.

H K님의 프로필 이미지
H K
질문자

감사합니다

H K님의 프로필 이미지

작성한 질문수

질문하기