如何使用批处理文件获取目录中多个文件的最后修改日期

发布于 2025-02-03 08:27:19 字数 660 浏览 4 评论 0原文

例如,例如标题,想在目录/路径(c:\ users)中获取这些扩展文件(.exe,.txt)的最后一个修改日期。我应该怎么做?

我是新手,在这里找到了一些类似的主题,但发现其中大部分仅适用于一个文件。

以下是我的示例代码,适用于任何人可以提供帮助的单个文件

set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%"
set "date=%YYYY%%MM%%DD%" & set "timestamp=%HH%%Min%%Sec%"
set host=%COMPUTERNAME%

ECHO DREFPFS.txt >> C:\Users\Desktop\temp\Version\%host%_CopyFiles_%date%.txt
@FOR %%A IN ("%C:\Users\Desktop\temp\DREFPFS.txt") DO @(ECHO=%%~tA) >> C:\Users\Desktop\temp\Version\%host%_CopyFiles_%date%.txt 

As title, for example would like to get the last modified date for these extension file (.exe, .txt) in a directory/path (C:\Users). How should i do it?

I am a novice on this and found some similar topics here but found most of it only work for a single file.

Below are my example code that work for a single file

set "YY=%dt:~2,2%" & set "YYYY=%dt:~0,4%" & set "MM=%dt:~4,2%" & set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%"
set "date=%YYYY%%MM%%DD%" & set "timestamp=%HH%%Min%%Sec%"
set host=%COMPUTERNAME%

ECHO DREFPFS.txt >> C:\Users\Desktop\temp\Version\%host%_CopyFiles_%date%.txt
@FOR %%A IN ("%C:\Users\Desktop\temp\DREFPFS.txt") DO @(ECHO=%%~tA) >> C:\Users\Desktop\temp\Version\%host%_CopyFiles_%date%.txt 

Anyone can help?

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

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

发布评论

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

评论(1

一场春暖 2025-02-10 08:27:20

这有帮助吗?

是的,您可以使用 /r交换机使用for命令来执行此操作,例如:
for/r %% f在(*)do echo %% f

;子树在windows-batch-file中”>这个问题

Does this help?

Yes, you can do this using the for command with the /r switch, e.g.:
for /r %%f in (*) do echo %%f

from this question

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