如何在Windows中使用批处理脚本获取最新文件

时间:2012-07-18 10:54:33

标签: windows command-line command-prompt batch-file

我有一个包含yyyymmdd_hhmmss_Demos.zip附加日期和时间的zip文件列表。现在如何在源目录中获取最近添加的zip文件。我需要使用copy命令在目标中复制此文件。

我找到了一些关于forfiles的信息,但是对于如何在几秒钟内完成它没有任何想法。

4 个答案:

答案 0 :(得分:23)

您可以使用

pushd D:\a
for /f "tokens=*" %%a in ('dir /b /od') do set newest=%%a
copy "%newest%" D:\b
popd

答案 1 :(得分:0)

pushd \\ryap\CONTROL_DATOS
for /f "tokens=*" %%a in ('dir \\ryap\CONTROL_DATOS /b /od') do set newest=%%a
Xcopy/Y "\\ryap\CONTROL_DATOS\%newest%" "D:\TXT_SOURCES\"
popd

答案 2 :(得分:0)

Date.today.to_fd
=> "05/28/2019"

答案 3 :(得分:0)

下面的代码段将提取日期并根据您的需要进行自定义

for /f "tokens=1-4 delims=/ " %%i in ("%date%") do (
     set dow=%%i
     set month=%%j
     set day=%%k
     set year=%%l
)
:: Pad digits with leading zeros e.g Sample_01-01-21.csv
    set yy=%year:~-2%
    set datestr=%day%-%month%-%yy%

替代方法:

set datestr=%date:~0,2%-%date:~3,2%-%date:~6,2%