0

我在一家从外部来源提取报告的金融机构工作。我有一个非常基本的批处理文件,它检查文件夹中的任何 zip 文件,将它们提取到不同的位置,并在提取后将 zip 文件移动到“旧”文件夹。

"C:\Program Files\WinZip\WZUNZIP.EXE" -d -o -sXXXXXXXXX C:\SFTP\ReportingAnalytics\Accounting\*.zip \\servername\Share2\Reporting_Analytics\Accounting\
MOVE C:\SFTP\ReportingAnalytics\Accounting\*.zip C:\SFTP\ReportingAnalyticsOld\Accounting

在一周内,这工作得很好。问题发生在周末。这些报告每天都会出现……不幸的是,每天都有相同的文件名。所以在这一周里,有人在做报告,没有问题。在周末,没有人处理报告并且他们被覆盖(周五的报告在周六早上到来,周日的报告在周六的报告到来时被覆盖)。

有没有一种简单的方法可以在提取时自动重命名这些文件?即AccountingReport1,AccountingReport2,等等......

任何帮助将不胜感激。

4

1 回答 1

0
@ECHO OFF
SETLOCAL
SET "sourcedir=U:\sourcedir\one"
FOR %%a IN ("%sourcedir%\*.zip") DO (
 ECHO("C:\Program Files\WinZip\WZUNZIP.EXE" -d -o -sXXXXXXXXX C:\SFTP\ReportingAnalytics\Accounting\%%a \\servername\Share2\Reporting_Analytics\Accounting\%%~na\
)

GOTO :EOF

您需要更改设置sourcedir以适应您的情况。

所需的 WZUNZIP 命令仅ECHO用于测试目的。验证命令正确后,更改ECHO("...WZUNZIP"...WZUNZIP实际创建目录并提取文件。

您没有告诉我们存档中有多少文件/目录或指示它们的名称,并且您的使用-d -o暗示有一个完整的蜕皮,因此这种方法是将每个.zip文件提取到一个新目录,nameofzip\\servername\S...s\Accounting

于 2014-11-11T23:02:15.177 回答