在文件夹树中找到最近修改的文件并将其设置为变量

时间:2015-09-06 20:39:04

标签: batch-file

我需要什么

- 允许我在很多目录和子目录中查找任何文件*.class.asasm的批处理脚本

- 选择已修改/编写的最新文件并将其设置为变量

(不仅file.class.asasm 而且,如F:\swf\tool\RABCDAsm\ClientLibSystem-123\extraFolder\file.class.asasm

- 最后,我的所有文件夹都会被命名为ClientLibSystem-123或ClientLibSystem - 9

- 我需要获取该数字并将其设置为变量

我的剧本 http://pastebin.com/M3WkQKJD

在下面添加:

@echo off
title Auto recompile
cls
pause
:c
dir /O:D /S /A:-D >> l.l
FOR /F "tokens=2 delims==" %%a IN ('find " " ^<l.l') DO SET file=%%a

在您的帮助下,我将能够更快地重新编译ActionScript 3字节码文件!

1 个答案:

答案 0 :(得分:0)

从下一个稍微改进的代码段开始。您可以在评论或edit your question中更多地提出更多代码或数据样本。

@echo off
SETLOCAL EnableExtensions EnableDelayedExpansion
title Auto recompile
cls
:c
FOR /F "delims=" %%a IN ('
    dir /B /O:D /S /A:-D F:\*.class.asasm ^|find /I "ClientLibSystem-"
  ') DO (
    set "file=%%a"
    rem grab that number from "!file:*ClientLibSystem-=!" as follows
    for /F "tokens=1 delims=\" %%G in ("!file:*ClientLibSystem-=!") do set "grab=%%G"
    echo found !grab! [%%~ta] "!file!"
    rem find the most recent file via comparing %%~ta
)
pause

资源(必读):