【发布时间】:2017-12-21 19:28:38
【问题描述】:
我有两个网络共享驱动器:我们称它们为:DriveA 和 DriveB。
DriveA 每天都会生成两个文件,我想将最新的文件复制到 DriveB/Folder1/fileA 和 DriveB /Folder2/fileB 每天。
谁能提供我可以根据创建日期复制文件的解决方案:
- 将文件 A(创建日期:7 月 17 日)复制到 DriveB/Folder1
- 将文件 B(创建日期:7 月 17 日)复制到 DriveB/Folder2
我确实想出了一个解决方案,但是它会根据“今天的日期”复制文件。
SET usernameID=useremail@domain.com
SET usernameDOMAIN=11111111
SET password=pwd@1234
net use "\\111.444.222.777\FOLDER" /USER:%usernameID% %password% /persistent:no
set source=\\222.111.333.444\FOLDER\FOLDER2\Report_
net use "\\DOMAIN\storage\2012-0151_hms_ux\Hadoop\LiveDataLandingZoneDWH" /user:usermail@domain.com pwd@1234 /persistent:no
set dest=\\code1\storage\2012-0151_hms_ux\Hadoop\LiveDataLandingZoneDWH\Input\Report\Report_
for /f "skip=1" %%x in ('wmic os get localdatetime') do if not defined MyDate set MyDate=%%x
set today=%MyDate:~0,4%%MyDate:~4,2%%MyDate:~6,2%
echo %today%
:copy
copy "%source%%today%0700.csv" "%dest%%today%0700.csv"
IF ERRORLEVEL 0 goto disconnect
goto end
pause
:disconnect
goto end
pause
:end
pause
编辑 1:
现在我使用以下命令复制日期为 2017 年 7 月 16 日的文件:
xcopy C:\Users\Desktop\report\ActualHRC_*.csv C:\Users\Downloads /D:07-16-2017
pause
如何动态提供/D:m-d-y?我的意思是,变量应该从系统中获取m、d 和y。
提前致谢!
【问题讨论】:
标签: windows batch-file scripting