如果特定扩展名不存在,如何删除文件夹?

如果特定扩展名不存在,如何删除文件夹?

我有多个文件夹,其中有 mp4、3pg、mp3 文件。我想删除文件夹中没有 mp4 文件的文件夹。我如何在终端上或通过编写 bash 脚本来做到这一点?

答案1

如果您没有或者不想使用通讯:

使用 find 获取包含 mp4 文件的文件夹列表 (A),获取所有文件夹的列表 (B)。然后获取(B)中不在(A)中的文件夹列表,并处理它们。

(未经测试)

(find -type f -name "*.mp4" -printf "%h\n";find -type f -name "*.mp4" -printf
"%h\n";find ./* -type d -printf "%p\n") | sort | uniq -u | while read i;do 
echo mv $i ${TRASHFOLDER};done

相关内容