하위 폴더를 삭제하지 않고 상위 디렉터리를 삭제하려면 어떻게 해야 합니까?

하위 폴더를 삭제하지 않고 상위 디렉터리를 삭제하려면 어떻게 해야 합니까?

예를 들어,

상위 디렉터리에 5개의 디렉터리가 있고 5개의 하위 디렉터리를 삭제하지 않고 상위 디렉터리만 삭제하고 싶습니다.

현재 나는 다음 코드를 사용하고 있습니다.

 mv parentFolder/* parentFolder/.. && rm -rf parentFolder

이보다 더 간단한 다른 옵션이 있습니까?

답변1

mv parentFolder/* parentFolder/..

해당 유형의 파일뿐만 아니라 모든(숨겨지지 않은) 파일을 이동합니다.목차.

디렉토리만 이동 zsh(코드 단축)

(){mv $1/{*(/),..} && rm -rf $1} parentFolder

또는 숨겨진 항목을 포함합니다.

(){mv $1/{*(D/),..} && rm -rf $1} parentFolder
  • (){..$1..} arg: 매개변수가 있는 익명 함수(분해용 parentFolder)
  • {a,b}csh 스타일 중괄호 확장, 분해에도 사용됨
  • (/):glob 한정자는 디렉토리만 선택합니다. 이 작업도 수행할 수 있습니다 */(이 방법도 작동 bash하지만 디렉터리에 대한 심볼릭 링크도 포함됩니다).
  • (D/): D도트 파일(이름이 로 시작하는 숨겨진 파일 .)용입니다.

관련 정보