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

[文件操作] [已解决]批处理如何根据文件夹的修改日期来移动文件夹?最好是可以指定日期

如何能根据这些文件夹的修改日期移动到E:\backup下
最好能根据指定的日期来移动  比如 set一个日期  例如set  指定日期=2014-4-2 就移动修改日期为这个的文件夹
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 pcl_test 于 2015-4-2 18:37 编辑

回复 1# luohao8810
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "指定日期=20150402"
  4. for /f "delims=" %%a in ('dir /ad /b') do (
  5. set "修改日期=%%~ta"
  6. set "修改日期=!修改日期:~,4!!修改日期:~5,2!!修改日期:~8,2!"
  7. if "!修改日期!" == "%指定日期%" move "%%a" "E:\backup\"
  8. )
  9. pause
复制代码
1

评分人数

TOP

回复 2# pcl_test
我想问问 为么那个dir那里 我指定目录的话  修改日期打印出来就是 ECHO 处于关闭状态。

TOP

回复 3# luohao8810
路径问题,dir /ad /b "指定目录",这样获取的文件夹是相对路径,所以你要把批处理放进"指定目录"里才可以,以下两种方式是绝对路径,不管批处理放在哪里运行都可以
  1. @echo off
  2. cd /d "指定目录"
  3. for /f "delims=" %%a in ('dir /ad /b') do echo %%~ta
  4. pause
复制代码
  1. @echo off
  2. for /d %%a in ("指定目录\*") do echo %%~ta
  3. pause
复制代码

TOP

返回列表