如何删除存在同名不同扩展名对应文件的MKV录制文件?
如何删除存在同名不同扩展名对应文件的MKV录制文件?
兄弟,太懂你这种想清SSD空间又怕误删重要文件的纠结了!你要的是只删掉有同名MP4对应的MKV文件,保留那些还没转成MP4的孤品MKV,而且只处理当前目录不碰子目录对吧?给你俩靠谱的终端方案,都是经过验证的:
方案一:Bash循环逐文件检查(新手友好,稳妥不翻车)
直接在终端里复制这段代码运行就行,它会挨个扫每个MKV文件,确认有同名MP4存在才会动手删,还加了交互确认避免手滑:for mkv in *.mkv; do mp4="${mkv%.mkv}.mp4" if [ -f "$mp4" ]; then rm -i "$mkv" fi done要是你确认所有对应关系都没问题,不想每次都确认,把
rm -i里的-i去掉就行,直接批量删除。方案二:find命令批量处理(效率更高)
如果你文件特别多,循环有点慢,试试这个find命令的写法,同样严格只处理当前目录,逻辑和上面一致:find . -maxdepth 1 -type f -name "*.mkv" -exec sh -c ' for file do mp4="${file%.mkv}.mp4" [ -f "$mp4" ] && rm -i "$file" done ' sh {} +
🔔 最后再啰嗦一句:不管用哪个方案,先拿几个文件测试下!比如手动找俩有对应MP4的MKV,跑一遍命令看看是不是只删这些目标文件,确认没问题了再全量执行,稳字当头~
备注:内容来源于stack exchange,提问作者BOplaid
相关产品推荐
相关产品推荐

