批量删除文件夹中第n个文件的内容
delete contents of nth file in a folder batch
我有一个程序可以根据文件顺序处理视频文件,例如,它会调用文件夹中的第 45 个或第 10 个文件,但绝不会调用同一个文件两次。现在,为了保存 SSD space 我只想删除第 n 个文件的内容,同时保留文件本身。
批处理文件解决方案没什么意思,因为批处理不能真正计算或处理数组和索引,它需要像这样工作:设置一个计数器,列出文件,对它们进行计数,当计数匹配你想要的数字,做点什么。
@echo off
setlocal enabledelayedexpansion
set i=0
for %%f in (*) do (
set /A i=!i!+1
if !i! EQU 45 (
echo overwriting %%f
rem echo. > %%f
)
)
rem
使该行成为注释(备注),删除 rem
使其真正覆盖文件。
请注意,这不能很好地处理子目录。
我有一个程序可以根据文件顺序处理视频文件,例如,它会调用文件夹中的第 45 个或第 10 个文件,但绝不会调用同一个文件两次。现在,为了保存 SSD space 我只想删除第 n 个文件的内容,同时保留文件本身。
批处理文件解决方案没什么意思,因为批处理不能真正计算或处理数组和索引,它需要像这样工作:设置一个计数器,列出文件,对它们进行计数,当计数匹配你想要的数字,做点什么。
@echo off
setlocal enabledelayedexpansion
set i=0
for %%f in (*) do (
set /A i=!i!+1
if !i! EQU 45 (
echo overwriting %%f
rem echo. > %%f
)
)
rem
使该行成为注释(备注),删除 rem
使其真正覆盖文件。
请注意,这不能很好地处理子目录。