加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 服务器 > 系统 > 正文

windows – 根据文件日期移动文件夹中的文件

发布时间:2021-01-28 11:13:08 所属栏目:系统 来源:网络整理
导读:我正在尝试将 Windows服务器上的数千个文件排序到多个文件夹中.文件名是Extract_YYYYMMDDHHMISS.dat,其中YYYY是年份,MM是月份,DD是日期.我想将这些文件移动到我已定义的文件夹层次结构,如下所示: Archive201311Archive201312Archive201313

我正在尝试将 Windows服务器上的数千个文件排序到多个文件夹中.文件名是Extract_YYYYMMDDHHMISS.dat,其中YYYY是年份,MM是月份,DD是日期.我想将这些文件移动到我已定义的文件夹层次结构,如下所示:

Archive201311
Archive201312
Archive201313
...
Archive201321

等等.

@echo off
setlocal enabledelayedexpansion
for /f %%f in ('dir Extract_* /b') do (
echo %%f
echo %%~15,8f
)
endlocal

我正在尝试使用for循环和字符串格式化将YYYYMMDD部分转换为变量,然后进一步拆分它,但我现在卡住了.

任何帮助赞赏.

解决方法

尝试这个并在输出正常时删除echo:

@echo off &setlocal
for %%i in (Extract_*.dat) do (
    set "fname=%%~i"
    setlocal enabledelayedexpansion
    set "name=!fname:*_=!"
    set "year=!name:~0,4!"
    set "month=!name:~4,2!"
    set "day=!name:~6,2!"
    echo move "!fname!" "Archive!!!!!!"
    endlocal
)

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读