find 명령의 패턴을 사용하여 디렉터리 크기를 반복할 수 있습니다.
find . -name "results_*" -exec du -sm '{}' \;
이제 이러한 디렉터리의 내용을 삭제하되 디렉터리 자체(result_*)는 그대로 유지하여 해당 디렉터리가 존재하고 백업에서 찾을 수 있음을 나타내는 자리 표시자를 만들고 싶습니다.
어떻게 해야 하나요?
답변1
대신 경로를 일치시킬 수 있습니다.
find . -path "*/results_*/*" -delete
또는 find
지원하지 않는 경우 -delete
,
find . -path "*/results_*/*" -exec rm -rf {} \; -prune
이는 마지막 경로 구성 요소를 제외하고 해당 경로에서 모든 것을 찾습니다 results_*
. 따라서 일치하는 디렉터리의 모든 내용은 results_*
제거되지만 디렉터리 자체는 유지됩니다(그 자체가 일치하는 디렉터리에 있지 않는 한 results_*
).