3

我有一个过程,可以定期将日志文件和屏幕截图写入文件夹,
每周创建 30-50 个文件。文件夹结构为..\Year\Month\filename.ext,无法更改。

我想创建一个快捷方式来粘贴到我的收藏夹中,这样我就可以快速进入这个文件夹,但我需要一个用于YEARand的变量MONTH。有为此的环境变量吗?

关于如何创建一个最好在没有脚本或预定作业的情况下自动更新的好主意?

4

1 回答 1

7

%DATE%环境变量保存当前日期。您可能很想用解析日期%DATE:~6,4%来获取年份。

但是这种方法不会很可靠。使用“短日期格式”%DATE%的 Windows 设置返回当前日期。问题是短日期格式设置是完全可定制的。一位用户可以将其系统配置为将短日期显示为;而另一个用户(即使在同一系统中)可能会选择. 对于 BAT 程序员来说,这是一场彻头彻尾的噩梦。29/06/2012Fri062912

一种可能的解决方案是改用WMIC。WMIC 是 WMI 的 WMI 命令行界面。WMI Windows Management Instrumentation 是http://en.wikipedia.org/wiki/Windows_Management_Instrumentation

WMIC Path Win32_LocalTime Get Day,Hour,Minute,Month,Second,Year /Format:table

以方便的方式返回日期以直接使用 FOR 解析它。

完成解析并将各个部分放在一起

FOR /F "skip=1 tokens=1-6" %%A IN ('WMIC Path Win32_LocalTime Get Day^,Hour^,Minute^,Month^,Second^,Year /Format:table') DO (
  SET /A MONTH=%%D
  SET /A YEAR=%%F
)

您的快捷方式可以指向包含上述代码的 BAT 文件,然后在右侧文件夹中打开资源管理器。

start "" "D:\FOLDER\%YEAR%\%MONTH%"
于 2012-06-25T05:29:39.947 回答