2017-01-24 2 views
-1

나는 파일과 디렉토리를 삭제하기 위해 rm -rf을 실행하는 것이 얼마나 위험 할 수 있는지에 대해 좋은 생각이 아니지만 터미널을 통해 안전하게 파일과 디렉토리를 삭제하는 방법에 대한 합의를 찾지 못하는 것 같습니다. 이것을 안전하게하는 또 다른 명령이 리눅스에 내장되어 있습니까?rm -rf 이외의 파일과 디렉토리를 삭제하는 안전한 명령이 있습니까?

+0

"안전"정확히 무엇을 의미? – jonrsharpe

+0

실수로'rm -rf/'를 입력하면 시스템의 많은 파일을 삭제할 수 있다는 것을 읽었습니다. 기본적으로 파일을 삭제하는 방법이지만 실수로 잘못된 명령을 입력하면 시스템이 손상되지 않습니다. – hidace

+0

이것은 위대한 권력 중 하나입니다 -> 큰 책임 거래. 파일 시스템의 루트에서 모든 것을 재귀 적으로 삭제하지 마십시오. – jonrsharpe

답변

1

-i 또는 -I 옵션을 사용하는 것이 좋습니다.

$ rm -i foo 
$ rm -I foo 

는 사람들은 당신이 파일의 삭제를 확인하라는 메시지가 대화 형rm을 말한다. rm(1) 맨 페이지에서

! 예를 들어

 
     -i  prompt before every removal 

     -I  prompt once before removing more than three files, or when 
       removing recursively; less intrusive than -i, while still giving 
       protection against most mistakes 

:

$ mkdir -p ~/foo/{bar,baz}  # make some dirs 
$ touch ~/foo/{bar,baz}/{1,2,3} # add some empty files 
$ rm -ir ~/ foo     # note the "accidental" space between `~/` and `foo` 
rm: descend into directory '/home/uz0r/'? y  # haven't noticed yet... 
rm: remove regular file '/home/uz0r/.bashrc'? # ...wait, what? 

는 "나는 당신이 $HOME/foo하지 $HOME을 삭제하라고 아니면했다 ... 잠깐만 ...? "

따라서 오타를 만들었지 만 -i은 사고로부터 당신을 구해 줬습니다. 이제 rm에게 멈추라 고 말한 다음 오타를 수정 한 후 다시 시도하십시오.

-f을주의하십시오! 그것은이 "결코 프롬프트"rm을 말해서 위의 안전망을 방해한다 :

 
     -f, --force 
       ignore nonexistent files and arguments, never prompt 
1

삭제 된 개체에 대한 휴지통을 직접 만드십시오.

mkdir ~/trash 
    mv xyz ~/trash 

파일에서 일부 권한이 변경 될 수 있음을 알고 복구 할 수 있습니다.

관련 문제