标题: [文件操作] 求助批处理把每天固定时间范围内产生的文件剪切到另外一个目录 [打印本页]
作者: superhsj 时间: 2022-8-17 11:44 标题: 求助批处理把每天固定时间范围内产生的文件剪切到另外一个目录
各位大佬好,有没有办法将目录中每天固定时间范围内(比如0点--7点)产生的文件,剪切到另外一个目录。万分感谢
作者: hfxiang 时间: 2022-8-17 13:15
如下指令即可获取文件(如:test.txt)带秒钟的时间,提取后做比较即可:- for /f "usebackq tokens=*" %a in (`forfiles /p . /m test.txt /c "cmd /c echo @fdate,@ftime"`) do @echo %a
复制代码
作者: superhsj 时间: 2022-8-22 09:57
回复 2# hfxiang
感谢回复,我是菜鸟,我先试一下。
作者: superhsj 时间: 2022-8-22 10:47
再次求助大佬,现在取出时间确实没有问题了,目前的问题的取出来的时间格式“9:59:42”跟我自定义时间比较的时候,我想取10点前的用leq,这个时间判定错误。我理解的是当成字符串比较了,所以9>1,有什么办法能让取出来的时间就是数字9呢
作者: superhsj 时间: 2022-8-22 10:48
再次求助大佬,现在取出时间确实没有问题了,目前的问题的取出来的时间格式“9:59:42”跟我自定义时间比较的 ...
superhsj 发表于 2022-8-22 10:47
- 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
- 10:26:17
- 9:59:42
复制代码
上面是我的代码和执行结果
作者: aloha20200628 时间: 2022-8-22 12:17
:: 筛选出当前目录中当天00:00-06:59区间内创建的文件- @echo off
- for /f "delims=" %%D in ('date/t') do set "today=%%D"
- for /f "tokens=1-5 delims=: " %%1 in ('dir/a-d/od/tc^|findstr %today%') do (
- if "%%2" geq "00" if "%%2" lss "07" (echo,hh:mm=%%2:%%3 %%5)
- )
- pause&exit/b
复制代码
作者: hfxiang 时间: 2022-8-22 12:34
回复 5# superhsj
试试如下指令- 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
复制代码
作者: superhsj 时间: 2022-8-22 12:49
回复 7# hfxiang
你这个好像没有问题,不过我得消化一下,非常感谢
作者: superhsj 时间: 2022-8-22 12:52
回复 6# aloha20200628
大佬,你这个我现在没研究明白,我在试试,感谢回复
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |