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

[文件操作] 批处理如何循环获取每个文件的修改时间?

[复制链接]
发表于 2018-11-21 10:08:50 | 显示全部楼层 |阅读模式
  1. ::手动输入对象,格式为:E:\CMDB\1.txt E:\2.txt;
  2. set total="E:\CMDB\1.txt E:\2.txt"
  3. for %%a in ("%total%") do (
  4. ::列出并筛选当前路径下特定文件的当前文件时间;
  5. set folder=%%~dpa
  6. set file=%%a
  7. set flj=%%~nxa
  8. )
  9. REM echo %folder%
  10. REM echo %file%
  11. REM echo %flj%
  12. dir /tw %file% >%folder%\dar.txt
  13. type %folder%\dar.txt|findstr %flj% > %folder%\dar01.txt
  14. ::筛选出特定文件时间信息;
  15. for /f "tokens=1,2,3,4 delims=/ " %%i in ('type %folder%\dar01.txt') do (
  16. set total=%%i%%j%%k%%l
  17. )
  18. ::把系统最新的修改时间写入当前路径下monitor.txt;
  19. echo %total% >>%folder%%flj%monitor.txt
复制代码
发表于 2018-11-21 21:20:45 | 显示全部楼层
  1. @echo off
  2. for %%a in (1.txt) do (
  3.     echo %%~ta
  4. )
  5. pause
复制代码

使用 %%~ta 获取文件修改时间可以吗?
 楼主| 发表于 2018-11-21 11:34:22 | 显示全部楼层
回复谢谢,powershell的我也写出来了,可惜现在环境不支持,所有我才逼着写BAT的 2# xczxczxcz
发表于 2018-11-21 11:13:50 | 显示全部楼层
文件最新修改时间: WIN7以上   xxx.ps1

  1. $file='E:\CMDB\1.txt','E:\2.txt'
  2. foreach($f in $file){Write-output ($f+':  '+(get-item $f).LastWriteTime)}
  3. pause
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-18 21:12 , Processed in 0.018547 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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