이전 버전의 Unix에서는 rm
명령이 디렉토리가 비어 있으면 삭제합니다. rm에 대한 Research Unix Eighth Edition 매뉴얼 페이지에서 : "항목이 디렉토리이면 비어있는 경우에만 제거됩니다." 나는이 별칭을 가지고 내가이 동작 같은, 그래서 내 /etc/profile
: alias rm='rm -d'
내가 명령의 GNU로 coreutils 버전을 사용하고 rm
있는, -d
알 수 rm
있는 거 빈 그들이 경우에 가서 제거 디렉토리에 있습니다.
여태까지는 그런대로 잘됐다. 이 별칭을 사용 rm
하면 예전처럼 사용할 수 있습니다 . 그러나 한 걸음 더 나아가고 싶습니다. 내가 좋아하는 것rm
디렉토리가 다른 디렉토리를 포함하는 경우에도 디렉토리가 유일한 디렉토리 인 경우 디렉토리를 삭제합니다. 디렉토리 구조가 얼마나 깊지는 중요하지 않습니다. 파일이 없으면 비어있는 (한 번 맨 아래에 도착하면) 디렉토리를 rm
모두 제거하고 싶습니다 .
이것은 여전히 일반으로 작동 rm
하고 전달 된 파일을 삭제 하는 별명으로 작성 될 수 있습니까?
mkdir -p a/b1/c2 && mkdir -p a/b2/c2; rmdir -p a/b1/c1;
여전히 a, a / b2 및 a / b2 / c2가 남습니다. 내가 원하는 것은 최상위 수준 (이 경우 a)을 rm
에 전달하고 아래에있는 모든 것을 제거하는 것입니다.
rmdir -p
?