找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 25072|回复: 8

[文件操作] 求助批处理把每天固定时间范围内产生的文件剪切到另外一个目录

[复制链接]
发表于 2022-8-17 11:44:52 | 显示全部楼层 |阅读模式
各位大佬好,有没有办法将目录中每天固定时间范围内(比如0点--7点)产生的文件,剪切到另外一个目录。万分感谢
发表于 2022-8-17 13:15:57 | 显示全部楼层
如下指令即可获取文件(如:test.txt)带秒钟的时间,提取后做比较即可:

  1. for /f "usebackq tokens=*" %a in (`forfiles /p . /m test.txt /c "cmd /c echo @fdate,@ftime"`) do @echo %a
复制代码
 楼主| 发表于 2022-8-22 09:57:35 | 显示全部楼层
回复 2# hfxiang


    感谢回复,我是菜鸟,我先试一下。
 楼主| 发表于 2022-8-22 10:47:00 | 显示全部楼层
再次求助大佬,现在取出时间确实没有问题了,目前的问题的取出来的时间格式“9:59:42”跟我自定义时间比较的时候,我想取10点前的用leq,这个时间判定错误。我理解的是当成字符串比较了,所以9>1,有什么办法能让取出来的时间就是数字9呢
 楼主| 发表于 2022-8-22 10:48:05 | 显示全部楼层
再次求助大佬,现在取出时间确实没有问题了,目前的问题的取出来的时间格式“9:59:42”跟我自定义时间比较的 ...
superhsj 发表于 2022-8-22 10:47
  1. D:\temp>for /f "usebackq tokens=*" %a in (`forfiles /p "d:\temp" /m *.* /c "cmd /c if @isdir==FALSE if not @ftime leq 10 echo @ftime"`) do  @echo %a
  2. 10:26:17
  3. 9:59:42
复制代码
上面是我的代码和执行结果
发表于 2022-8-22 12:17:31 | 显示全部楼层
本帖最后由 aloha20200628 于 2025-7-21 14:24 编辑

:: 筛选出当前目录中当天00:00-06:59区间内创建的文件

  1. @echo off
  2. for /f "tokens=1-4* delims=: " %%a in ('dir/a-d/od/tc^|findstr "%date%" ') do (
  3.     if "%%b" geq "00" if "%%b" lss "07" (echo,hh:mm=%%b:%%c %%e)
  4. )
  5. pause&exit/b
复制代码
发表于 2022-8-22 12:34:00 | 显示全部楼层
回复 5# superhsj


试试如下指令

  1. for /f "usebackq" %a in (`forfiles /p . /m *.* /c "cmd /c echo @file,@ftime"`) do @for /f "tokens=1-2* delims=:," %b in ("%a") do  @if %c lss 10 @echo;%b %c:%d
复制代码
 楼主| 发表于 2022-8-22 12:49:59 | 显示全部楼层
回复 7# hfxiang


    你这个好像没有问题,不过我得消化一下,非常感谢
 楼主| 发表于 2022-8-22 12:52:49 | 显示全部楼层
回复 6# aloha20200628


    大佬,你这个我现在没研究明白,我在试试,感谢回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 18:13 , Processed in 0.018948 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表