我使用 gmusic 来整理和组织我的文件夹结构。然而这意味着我留下了一些文件夹,除了通常的图片封面外,没有任何文件。
我想对所有文件夹和子文件夹进行排序,然后删除父文件夹(如果文件夹小于 5mb)。
这是我所看到的另一个答案,但这不处理子文件夹。
du --max-depth 1 | awk -v q='"' '$1 < 30000000 && $2 != "." {sub(/^[0-9\t ]+/, "", $0); print q $0 q}'
下面我们要删除该文件夹Always Ascending
并保留所有文件夹。
但在这里,我们要删除George Harrison
& 2017 - Guardians Of The Galaxy Vol. 2 Awesome Mix Vol. 2
& Disk 1
。
答案1
find
所有文件夹,检查大小是否小于例如 5000。如果小于,则rm -Rf
文件夹和使用-prune
不会下降到此文件夹。仅当第一个为真时,才会运行第二个-exec
和。-prune
-exec
find . -type d \
-exec sh -c '[ $(du -s "$1" | cut -f1) -lt 5000 ]' find-sh {} \; \
-exec echo rm -Rf {} \; \
-prune
我放了echo rm
,在删除之前,请仔细检查输出是否正确echo
。