如何根据当前日期复制文件并运行脚本?

发布于 2024-12-11 08:19:55 字数 375 浏览 0 评论 0原文

每天午夜后我都必须复制前一天的日志文件。

日志名称的格式为 exYYMMDD.log。所以今天(2011 年 10 月 22 日)我必须将名为 ex111021.log 的文件复制到某个目录中。

是否可以通过批处理脚本来完成?如果没有,我可以使用 powershell,但不喜欢,因为它没有安装在我的服务器上。

编辑: 在 Siva Charan 的帮助下,我创建了这个(抛光 win7 - echo %date% 打印 YYYY-MM-DD)

set /a yest_Day = %date:~8,2%-%var:~-2,1%
copy ex%date:~2,2%%date:~5,2%%yest_Day%.log targetDir

Every day after midnight I have to copy log file from day before.

Log names are in format exYYMMDD.log. So today (22.10.2011) I would have to copy file named ex111021.log into some directory.

Is it possible to do it in batch script? If not I could use powershell but would prefer not as it is not installed on my server.

Edit:
With help of Siva Charan I created this (polish win7 - echo %date% prints YYYY-MM-DD)

set /a yest_Day = %date:~8,2%-%var:~-2,1%
copy ex%date:~2,2%%date:~5,2%%yest_Day%.log targetDir

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

最近可好 2024-12-18 08:19:55

在 powershell 中:

$YesterdayfileName = [string]::format("{0:yyMMdd}", ((Get-Date).adddays(-1)))+".log
# today 22/20/2011 gives 111021.log

Copy-Item $YesterdayfileName c:\temp

In powershell :

$YesterdayfileName = [string]::format("{0:yyMMdd}", ((Get-Date).adddays(-1)))+".log
# today 22/20/2011 gives 111021.log

Copy-Item $YesterdayfileName c:\temp
羁〃客ぐ 2024-12-18 08:19:55

批处理文件中实现这种方式。

复制命令的语法:

copy sourcefilepath destinationfilepath

示例:

对于今天的日期:

copy ex%date:~12,10%%date:~4,2%%date:~7,2%.log D:\

对于昨天的日期:

set /a yest_Day = %date:~7,2%-%var:~-2,1%
copy ex%date:~12,10%%date:~4,2%%yest_Day%.log D:\

您必须提供正确的文件路径文件名 ex111022.log / ex111021.log 和目标位置之前。

您可以为此批处理文件制定一个计划,该计划将每天运行。

Implement this way in Batch file.

Syntax of Copy Command:

copy sourcefilepath destinationfilepath

Example:

For today's date:

copy ex%date:~12,10%%date:~4,2%%date:~7,2%.log D:\

For yesterday's date:

set /a yest_Day = %date:~7,2%-%var:~-2,1%
copy ex%date:~12,10%%date:~4,2%%yest_Day%.log D:\

You have to provide proper file path before the file name ex111022.log / ex111021.log and destination too.

You can make a schedule for this batch file, which will run on daily basis.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文