디렉토리와 모든 내용을 어떻게 제거합니까?

Bash에서 내가 아는 것은

rmdir directoryname 

디렉토리 만 제거하지만 비어있는 경우. 하위 디렉터리를 강제로 제거하는 방법이 있습니까?

답변

다음 명령이 자동으로 수행됩니다. .주의하세요.

rm -rf directoryname 

댓글

  • " -f "는 일부 온 전성 검사를 재정의하는 "-force "입니다. 시작하기에 더 안전한 명령은 rm -r directoryname입니다.
  • 어떤 이유로 다음과 같은 경우 rm: invalid option -- r 오류가 발생합니다. rm -r < directoryname >를 사용하여 디렉터리를 삭제하려고합니다.
  • @Sunspawn 이 관련 질문을 확인 하여 ' 사례인지 확인하세요.
  • @JimParis " 더 안전한 "는 상대적입니다. 원격 컴퓨터에서 실행할 스크립트를 작성한다고 가정합니다. 이 스크립트에는 디렉토리를 제거하는 명령이 있습니다. 여기서는 rm -rf directoryname coz를 사용하는 것이 " 안전한 "입니다. = “af8aae6a89″>

스크립트가 사용자 입력을 기다리고 있기 때문에 ' 스크립트가 실행을 일시 중지하지 않도록합니다. 물론 디렉토리를 삭제해도 아무런 문제가 없음을 확인해야합니다.

답변

if rm -rf directoryname가 실패합니다. rm -R -f directoryname 또는 rm --recursive -f directoryname를 사용해보세요.

운이 좋지 않다면 rm을 다시 설치하거나 셸을 전환하는 것이 좋습니다.

설명

  • 다음은 rm에서 사용할 수있는 옵션입니다. 맨 페이지에서 man rm를 입력하여 검색하여 재귀 삭제 옵션과 force 옵션을 확인했습니다.
  • rm 매뉴얼 페이지 목록 -r? 그것은 무엇을합니까? (단지 테스트 목적으로 만든 디렉토리에서 더미 파일 (및 하위 디렉토리) 만 포함하여 사용해보십시오.) 사용중인 운영 체제는 무엇입니까?
  • P.S. rm -r가 작동하지 않으면 ' 작동하지 않는 경우 쉘 문제가 아니라 OS 문제입니다. (엄격히 말하면 ' 사용중인 rm 버전에 문제가 있으므로 다음을 설치하여 해결할 수 있습니다. 다른 버전의 rm 또는 시스템을 검색하여 iv id가 아닌 다른 디렉토리에 이미 다른 버전의 rm가 있는지 확인 = “020ac1d181″>

.)

  • 아, 맞습니다. 우분투 14.04에서 ' m을 언급하는 것을 잊었습니다. 터미널에서 man rm를 실행했을 때 less 텍스트 뷰어. 스크롤하여 -R -재귀 옵션이 -r 옵션과 조화를 이루는 전체가있는 들여 쓰기 된 항목을 찾았습니다. 모든 인수가 동일합니다.
  • 수정 : sudo rm -r directoryName 를 사용해 보셨습니까? 기본 명령의 작성되지 않은 규칙은 -r 프로그램이 파일 시스템의 모든 파일에서 재귀 적으로 실행되도록 허용하고 (선택한 위치에서 시작) -f가 강제로 작업을 수행하도록 허용한다는 것입니다. ' 위험 이더라도. ' cd ', ' mv ', ' ls ' 대부분 이이 원칙을 적용합니다. ls -r /는 duzie가되고 cp -rf / /dev/null는 파일 시스템의 모든 것을 파괴합니다. <-그 명령을 실행하지 마십시오!
  • 답글 남기기

    이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다