批处理 转移 删除 几个月以上 的文件


@echo off

setlocal enabledelayedexpansion

::超过几个月

set mon=0

::目标路径

set target="d:\del\"

::当前路径

set level1=%~dp0

::遍历所有文件

for /r %%i in (*) do (

rem 将文件名中的%号转换
set location="%%i"
set location=!location:%%=%%%%!

rem 判断文件创建日期是否大于指定月数
call :getTime !location! fileTime
set /a diff=%date:~0,2%-!fileTime:~0,2!

rem 如果日期大于等于指定月份,移动文件
if !diff! geq %mon% (
rem 设置目标路径
set subDir=%%~dpi
set subDir="%target:"=%!subDir:%~dp0=!"
xcopy "%%i" !subDir! /y
rem 如果不是本文件,删除文件
if %%~nxi neq %~nx0 del "%%i"
)

)

pause & exit

::得到创建时间

:getTime

for /f "skip=4 tokens=1" %%a in ('dir %1 /tc') do set %2=%%a & goto :eof

只转移bat所在的文件夹(包括子文件夹)的所有文件,然后删除.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值