[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 能不能利用已有的批处理写一个删除当前文件夹下的所有零字节文件

已有一个批处理将当前文件夹所有ts文件合并为testtesttest.ts:

@echo off

::合并所有ts合并视频输出为e:\testtesttest.ts
setlocal enabledelayedexpansion
del files.txt /Q
for /f "delims=" %%i in ('dir *.ts /b ') do (
  echo file '%%i' >> files.txt
)
ffmpeg -y -loglevel quiet -f concat  -safe 0   -i files.txt -c copy e:\testtesttest.ts

exit

现在要把该文件夹下所有零字节ts文件删除,怎么用批处理做到,谢谢

已经自己找到答案了,https://www.zhihu.com/question/27634755
如何用批处理删除指定大小的文件?
如何用批处理删除某个文件夹目录(该文件夹多层嵌套子文件夹)下所有大于 1000kb 的任何拓展名的所有文件,保留 1000kb 以下的文件? 比如这个文件夹是 E 盘根目录名字叫做 xy 的文件夹。

此题终结,用:
for /r E:\xy %%i in (*) do @(if %%~zi gtr 1024000 del "%%i" /f) 搞定

PS:EQU 等于; NEQ 不等于; LSS 小于; LEQ 小于等于; GTR 大于; GEQ 大于等于

for /r E:\testout %%i in (*.ts) do @(if %%~zi EQU 0 del "%%i" /f)

TOP

返回列表