我有多个文件夹,其中有 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