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

[文件操作] 批处理如何根据“创建时间”在源文件名前添加序号,最后名称输出到txt?

源文件

根据“创建时间”排序的文件

重新编号的文件

注:创建时间是精确到秒(或更精确)的,,不是像图片中的只显示到分

这里秒和分没区别 你也可以试试 WMIC 提取时间

TOP

  1. @echo off & setlocal enabledelayedexpansion
  2. set "p=%~p0"
  3. set n=1000
  4. set wmic=wmic DataFile where "Drive='%~d0' and Path='%p:\=\\%' and Extension='mp3'"
  5. for /f "tokens=1*" %%a in ('%wmic% get CreationDate^,Name^|find "\"^|sort') do (
  6.         set /a n+=1
  7.         for /f "delims=" %%c in ("%%b") do ren "%%~fc" "!n:~1!-%%~nxc"
  8. )
  9. pause
复制代码

TOP

比较了下,wmic 和 dir 按创建时间排序没有区别
  1. @echo off & setlocal enabledelayedexpansion
  2. set n=1000
  3. for /f "delims=" %%a in ('dir /b /od /tc *.mp3') do (
  4.         set /a n+=1
  5.         ren "%%a" "!n:~1!-%%~nxa"
  6. )
  7. pause
复制代码

TOP

返回列表